Open access peer-reviewed chapter

Perspective Chapter: Multi-Contact Humanoid Stability for Increased Interaction in Unstructured Environments

Written By

Parastoo Dastangoo and Alejandro Ramirez-Serrano

Submitted: 15 May 2022 Reviewed: 25 October 2022 Published: 30 December 2022

DOI: 10.5772/intechopen.108754

From the Edited Volume

Human-Robot Interaction - Perspectives and Applications

Edited by Ramana Vinjamuri

Chapter metrics overview

63 Chapter Downloads

View Full Metrics

Abstract

This paper presents a practical solution to the problem of multi-legged robot stability moving on unstructured 3D terrains using a multi-contact approach. The solution is based on a modified version of the contact wrench set method, which has been reformulated to utilize three arbitrary contact points representing the physics of contact between the robot and the environment. The new formulations are then used to test the stability of a life-size humanoid robot. The proposed method extends available formulations making the CWS tool suitable for a variety of terrains having various physical and geometrical characteristics including heterogenous coplanar (e.g., stairs and sloped terrain) and noncoplanar surfaces (e.g., gravel, sand, compliant terrains, etc.). The results provided by the new formulations are visualized using a graphical visualization tool, showing the adaptability of the proposed formulation in multi-contact locomotion. The results show that the proposed approach effectively quantifies the robot’s stability on a wide range of surfaces and environments, such as mines, industrial facilities, and urban search and rescue operations. Experimental tests on a life-size humanoid are also presented.

Keywords

  • multi-legged robotics
  • humanoid stability
  • multi-contact locomotion
  • CWS method

1. Introduction

According to the International Labor Organization, 2.3 million work-related deaths happen around the world annually. Work-related incidents also contribute to thousands of disabling work-related injuries every year. These statistics are even more pronounced in work-related tasks that are performed in highly unstructured environments, such as mining and forestry.

A viable approach to keep humans out of harm’s way is to provide them with robotic artifacts that can assist them when the associated tasks are performed in high-risk structured/unstructured chaotic and confined environments. In particular, multi-legged artifacts, such as quadrupeds, humanoids, and hybrid robots, are promising devices as they have (at least in theory) the capabilities to penetrate and perform tasks in complex unstructured (potentially compliant environments. However, maintaining the stability of such robots in the mentioned environments is complex and improved mechanisms need to be developeded before multi-legged artificial systems can be effectively deployed in such spaces.

Among the large body of stability mechanisms developed targeting robotic systems, the zero moment point (ZMP) method [1] is one of the most popular. However, ZMP is only able to assess the stability of walking robotic systems moving on flat horizontal surfaces. It cannot be applied to assess stability in terrains having noncoplanar surfaces, unstructured terrains, and deformable (compliant) terrains. The reason is that ZMP cannot determine whether any of the robot’s feet slip or not, and it cannot be applied on uneven terrain where foot contacts take place on noncoplanar surfaces. To overcome these aspects, diverse formulations have been proposed capable of capturing the entire robot’s dynamics, including friction constraints [2]. Among such formulations, the contact wrench set (CWS) method is a formulation capable of measuring the stability of multi-legged walking robots when the system has multiple noncoplanar contacts where friction cone constraints hold. For this, the method uses a set of allowable wrenches obtained from the contact forces at each individual contact point [3, 4, 5]. For a multi-legged robot to maintain its stability, its total contact wrench, calculated from the robot’s motion, should lie within the CWS [3, 4]. The CWS method has been enhanced by investigating the extent to which the method is valid and its application in different operation scenarios [3, 6, 7, 8, 9, 10]. For instance, the authors in Ref. [10] developed a linear and angular momentum motion planning method using the robot’s prespecified contact locations. The authors in Ref. [9] used pre-specified contact locations and CWS to generate whole-body robot motions. Other authors [e.g., [6, 7]] have considered the CWS at the robot’s center of mass (CoM) to generate whole-body motion plans. Such work uses nonlinear optimization within the multi-contact domain to generate walking patterns when climbing stairs while the robot is able to employ handrails for additional support. Furthermore, complementary formulations have been developed to compute the robot’s CoM feasible acceleration to generate effective walking patterns [11]. Similarly, researchers have developed time-optimal trajectory generation approaches using fixed whole-body robot postures with prespecified contact locations using optimization approaches [e.g., Ref. [8]]. In other publications [e.g., Ref. [12]], authors have combined the ZMP and the CWS methods to maximize their individual advantages.

Although the published studies provide advances in formulating somewhat effective stability methodologies using a set of discrete contact points, the available methodologies fail to fully resolve and provide a generic methodology for stability on continuous surface contacts where the contacts point between the robot and the ground can be perceived as a surface having infinite contact points (e.g., a continuous sole of the robot’s foot in contact with a deformable ground surface, such as sand). To solve this issue, many approaches have used a large finite number of individual contact points and contact forces to capture the physics of the continuous surface [13]. However, such approaches are computationally expensive and cannot be effectively employed in real time or in cases where robots might need to move at high speeds. In an attempt to provide a solution to such a problem, the authors in Ref. [13] proposed the use of a closed-form formulation capable of computing the CWS stability explicitly, without the need to make reference to individual contact points. Although effective, such method, is only applicable to contact areas between the robot and the ground having rectangular shapes (e.g., typical shape for humanoid feet). Such a limitation restricts the application of the formulation to particular foot shapes. Furthermore, the methodology cannot be used in robots having partial contact with the ground (e.g., when partial footholds exist e.g., Ref. [14]). In this manuscript, the scope of the CWS method is extended by proposing a modified formulation that is applicable to robots walking on unstructured terrains and when robots move on surfaces that can be perceived as providing an arbitrary number of contact points that reduce to three contact forces. In such an approach, the stability of the robot can be measured on practically any real-world terrain, where each foot of the robot might only have partial contact with the ground (e.g., on rough and rocky terrains). The proposed approach can thus be employed in realistic contact scenarios while reducing the computation time via the use of fewer contact forces when compared to the traditional CWS method. This, in turn, enables us to employ the solution on arbitrary terrain topographies provided there are at least three contact points between the robot and the environment. Hence, the proposed approach provides opportunities to deploy humanoids and other multi-legged robots in real-world complex environments.

Furthermore, the proposed method described in this paper is also suitable to measure the robustness of the robot’s stability via a newly developed margin for acceptable contact wrenches [15]. In this paper, radar charts are developed to visualize the robot’s stability condition. Such visualization technique enables roboticists to have the tool to better control/guide multi-legged robots moving on unstructured potentially dynamic terrains encompassing surfaces having various geometrical and physical characteristics.

The rest of this paper is organized as follows: Section 2 describes the proposed methodology. Section 3 provides simulation and experimental results, and conclusions are provided in Section 4.

Advertisement

2. Proposed methodology

Multi-contact stability methods, such as the CWS, rely on sensor data information measured on the contact points. Based on the available information such methods shape the robot’s stability condition. In general, contact models have been employed as a key element in determining the stability of any multi-legged robot. In this paper, two types of contact styles are considered as a robot locomotes through a given surface: (i) fixed contact defined when the robot’s foot is in the support phase, and (ii) free contact (i.e., six unconstrained degrees of freedom—DoF) defined when the foot of interest is in its swing phase. In this work shifting between contact modes (e.g., from fix contact to free contact and vice versa) as well as other types of contact modes, such as sliding contact modes, are not considered. Rather the work focuses on determining the stability of the robot when in a fix contact mode. Such a focus does not, however, restrict the methodology to be applied in locomotion transition mode phases as it is assumed that the robot’s locomotion is performed in a quasi-static manner where it can be considered to be in a fixed contact mode. That is, the proposed stability mechanisms simplify the mathematical formulations but do not restrict the robot from locomoting at high speeds.

2.1 Physics of friction

To determine whether a given foot, i, of the robot of interest is in the fixed contact mode the exerted force on the system (foot) is checked [16]. For this, the coulomb friction cone on foot i is employed. Accordingly, the contact mode of a box representing the robot’s foot remains fixed as long as the contact force at point i, fci, remains inside the Coulomb friction cone [17]. Therefore, for the contact force to remain inside the friction cone, it needs to satisfy Eq. (1):

fci·ni>0
fci·tiμ·fci·niE1
fci·biμ·fci·ni

where tibini is the local orthogonal contact frame at the contact point Ci, where ti, bi, and ni denote the two tangential, and the surface normal components, respectively, fci denotes the contact force at the point Ci, and μ denotes the static coefficient of friction.

2.2 Contact of surface areas

The physics of a single contact point described above, however, cannot be employed as defined in Eq. (1). Such formulation must be extended to consider the generic case where two surfaces (in contrast to two points) are in contact with each other where the contact between surfaces is to be considered continuous over the corresponding contact area. Under such conditions, one can consider that there exist infinite contact points between the corresponding surfaces where each (and discrete) contact point has a specific contact force (Figure 1a). Under such conditions, previously proposed methods require an infinite amount of time to compute the friction cone for each of contact points comprising the contact surface and find the corresponding fix mode boundaries. Fortunately, the authors in Ref. [13] have proven that under the Coulomb friction assumption, rather than dealing with an infinite number of reaction force vectors found on a continuous surface (needed to calculate the corresponding wrench at the center of the surface), a discrete number of friction cones can be defined at diverse points of the contact surface area adding up to the same wrench (Figure 1b). Three contact points used to define a given plane is significant when compared to using a large number of contact points, as it provides numerous advantages, including shorter time to compute the given stability, while providing a more generic solution.

Figure 1.

A surface (e.g., robot’s sole) in contact with the ground through surface contact.

Furthermore, a triangular surface is a good, simplified approximation of any typical contact between a robot’s foot (or feet) and the ground when the foot (feet) is (are) in its (their) support (fixed contact) phase. This is true when the robot’s foot is in contact with any rigid surface, especially rugged ones, such as stepping on rocky surfaces, where the foot makes contact only with a small set of discrete contact points. This approximation is also effective and applicable for deformable surfaces (e.g., loose sandy terrains) assuming the terrain deformation takes place over a sufficiently long period of time such that the deformation could be considered quasi-static. In this paper, standing on a single point (e.g., pegs) or in line contacts (e.g., stepping on a long and narrow surface—funambulism) is not considered. Figure 2 illustrates a set of three random contact points, A, B, and C forming a virtual triangular contact area ABC when a robot’s foot lands on an unstructured rigid terrain. Such a surface is considered virtual as it might not fully define the real surface but rather a hypothetical plane where the robot is setting its foot.

Figure 2.

Contact triangle from isometric and bottom perspectives.

2.3 Triangular surfaces and corresponding wrench cone

With the virtual triangular surface area ABC, a novel analytical formulation can be developed for calculating the wrench cone using the known Fourier-Motzkin method [13].

Without loss of the generality, a geometrical frame of reference defining the virtual triangular surface can be produced by aligning the x-axis alongside the BC edge of the triangular surface, with the orthogonal y-axis defined in the same plane. When the robot moves over a flat rigid terrain the virtual triangle can be considered as part of the real contact surface.

Based on the location of the contact points A, B, and C defining the virtual triangle (shown in Figures 1 and 2) each having coordinates (xi, yi) the following properties are computed (Figure 3).

Figure 3.

A general contact triangle and its centroid.

For a given triangle, the coordinates of its centroid (xO,yO), as well as the distances, dOA, dOB, and dOC from the triangle’s centroid to each of the vertices can be computed per Eqs. (2) and (3), respectively.

xO=xA+xB+xC3;yO=yA+yB+yC3E2
dOA=dxOA=xAxOdyOA=yAxO;
dOB=dxOB=xBxOdyOB=yBxO;E3
dOC=dxOC=xCxOdyOC=yCxO;
dxOA=xOA,dxOB=xOB,dxOC=xOC
dyOA=yOA,dyOB=yOB,dyOC=yOC

Under the above formulations, it can be shown that the contact forces on the contact surface are equivalent to a set of forces at the contact vertices comprising the virtual triangular surface. Therefore, in what follows, three contact forces at points A, B, and C and the corresponding torque at the triangle’s centroid are used to determine the physical interaction that exists between the foot and the ground. To achieve this, a set of mathematical formulations, Eqs. (4) and (5), developed as part of this research work are used.

Figure 4 illustrates a top-down view of one of the robot’s feet in contact with the ground, including the contact forces and contact torques, exerting on the contact points. The complete system of forces and torques is formulated as per Eqs. (4) and (5).

Figure 4.

The location and orientation of forces with respect to the frame of reference located on the triangle’s centroid.

fx=fxA+fxB+fxC
fy=fyA+fyB+fyCE4
fz=fzA+fzB+fzC
τx=fz1yOAfz2yOBfz3yOC
τy=fz1xOA+fz2xOBfz3xOCE5
τz=fx3yOC+fx2yOBfx1yOA+fy3xOCfy2xOBfy1xOA

For this, a theorem is used, where the wrench cone at each of the three contact-point systems can be expressed (Theorem 1).

Theorem 1: A system with three contact points fA,fB,fC obeying the Coulomb friction rules exist, if and only if there exists a contact wrench cone with wrench=fxfyfzτxτyτz at the centroid, O(x0,y0), of the virtual contact triangle satisfying Eq. (6).

fxyOAysum.μfz.
fyxOCxsum.μfz
fz>0
yOB.fzτxyOA.fzE6
xOC.fzτyxOB.fz
τminτzτmax

where

xOi=xixO,xO=xA+xB+xC3,i=A,B,C
yOi=yiyO,yO=yA+yB+yC3,i=A,B,C
xsum=xOA+xOB+xOC
ysum=yOA+yOB+yOC
τmin=μxOC+yOAfz+ysum.fxμτx+xsum.fyμτy
τmax=μxOC+yOAfzysum.fx+μτxxsum.fy+μτy

Theorem 1 guarantees that if the CWC obeys Eq. (6), there exists a set of three contact forces that fulfill Eq. (1) (i.e., satisfy the Coulomb friction rules). The significance of this theorem is twofold:

  1. Theorem 1 connects the physics of continuous surface contact to the physics of a wrench cone in the centroid of the surface of interest.

  2. It simplifies the determination of the robot’s stability condition by examining the wrench just at the centroid of the surface rather than the need to verify the entire surface.

Therefore, Theorem 1 provides the mechanism to demonstrate whether a foot or robot of interest is stable or not via the value of the wrench at the centroid of a continuous (real or virtual) contact surface. The added benefit of the proposed method is that it is suitable for implementation on any real robot which has a force/torque (F/T) sensor positioned at the interface between the robot and the contact with the surface (e.g., ankle of the robot’s foot or at any extremity e.g., arms) that the robot might use to locomote in any style (e.g., crawling). The captured F/T sensor data can then be used to compute the corresponding wrench at the centroid of the corresponding contact triangular surface.

Eq. (6) determines the stability condition of multi-legged robots in binary logical terms (i.e., 1 → stable; 0 → unstable). If all six inequalities in Eq. (6) are satisfied the robot is said to be stable, otherwise, it is unstable.

However, to understand how stable a stable robot is a stability margin is needed as well as a visualization tool, where users can determine the conditions in which the robot is stable and what movements the robot might need to avoid which might cause it to approach instability.

Proof:

In order to prove that the previous statements are satisfied, there is a need to relate Eqs. (4) and (5) to the Coulomb friction law, so that they can be expressed as positive combinations enabling the use of linear algebra algorithms. In order to achieve this, all force and torque variables (e.g.,fxi,fyi,fzifx, fy, fz,τx, τy,τz) at each contact point (between the robot and the environment) and the centroid of the triangle formed by three contact points are normalized by defining a set of new variables (k1,k2,k3,c1,c2,αxi,αyi,βzi) according to the Coulomb friction law. It is worth mentioning that in such a procedure there exist 15 variables fxi,fyi,fzifx, fy, fz,τx, τy,τz (i=1,2,3), which are substituted with 14 new variables k1,k2,k3,c1,c2,αxi,αyi,βzi (i=1,2,3). Therefore, while normalizing the variables, one variable is reduced as the first step of the Fourier-Motzkin elimination method [18].

In order to normalize the forces and torques while satisfying Eq. (1), there is a need to define a new set of variables as per Eq. (7).

k1fxμfz;k2fyμfz;k3τzμX+YfzE7
c1τxysumfz;c2τyxsumfz

Normalizing the contact forces employing the parameters αxi,αyi,andβzi produce the expressions in Eq. (8):

αxifxiμfzi;αyifyiμfzi;βzifzifzE8

Recall:

ifzi=fzwithiN:fzi>0

It must be noted that Eq. (8) produces nine expressions (i=1to3), where i represents one of the three contact points. To obtain a set of suitable expressions to enable developing a solution for the Fourier-Motzkin elimination procedure, the 11 parameters used in Eq. (9) are defined as:

ysumyOA+yOB+yOC
xsumxOA+xOB+xOC
YOAyOAysum;YOByOBysum;YOCyOCysum
XOAxOAxsum;XOBxOBxsum;XOCxOCxsumE9
XmaxXOAXOBXOC
YmaxYOAYOBYOC
px=xsumxsum+ysum;py=ysumxsum+ysum
QX.px+Y.py

By considering Eqs. (4) and (5), as well as the new set of variables defined in Eqs. (7) and (8) lead to Eqs. (10):

1=βz1+βz2+βz3E10a
c1=βz1.YOAβz2.YOBβz3.YOCE10b
c2=βz1.XOA+βz2.XOBβz3.XOCE10c
px=xsumxsum+ysum;py=ysumxsum+ysumE10d
k3=pxαy1.βz1.XOAαy2.βz2.XOB+αy3.βz3.XOC+pyαx1.βz1.YOA+αx2.βz2.YOB+αx3.βz3.YOCE10e
i,αxi1E10f
i,αyi1E10g
i,βzi>0E10h

Eqs. (10) represents a set of eight inequalities based on variables k1,k2,k3,c1,c2,αxi,αyi,andβzi. In order to apply the Minkowski sum to the set of inequalities in Eqs. (10), the variables γx,γy,γx,γy are defined as per Eq. (11).

γx=αx2.βz2.YOB+αx3.βz3.YOC
γy=αy1.βz1.XOA+αy2.βz2.XOBE11
γx=αx1.βz1.YOA
γy=αy3.βz3.XOC

The variables defined in Eq. (11) can then be used to derive a simpler system of inequalities based on the properties ofαxi,αyiandβiz. From Eqs. (8), (10), and (11), it is concluded that iβzi=1 and βiz>0. Furthermore, from Eqs. (1) and (8), it is clear that the parameter α (defined in Eq. (8)) lies within the range of 11. By applying these properties in the expressions in Eq. (11), the following set of inequalities is obtained (Eqs. (12)).

γxYOB.βz2+YOC.βz3
γxYOA.βz1γxγxc1E12a
γx+γxmaxYOAYOBYOC=Y

and,

γyXOA.βz1+XOB.βz2
γxXOC.βz3γyγyc2E12b
γy+γymaxXOAXOBXOC=X

Given the fact that the Fourier-Motzkin method algorithm works based on eliminating variables in each step, to proceed with this algorithm on the inequalities in Eqs. (12), some of the variables should be eliminated. Therefore, the following lemma describes the procedure for removing βzi by finding the boundaries of γx, γx, γy, and γy based on Eqs. (12).

Lemma 1) Following boundaries are derived based on Eqs. (12):

2γxY+c1E13a
2γxYc1E13b
2γyXc2E13c
2γyX+c2E13d

Proof of lemma 1:

Summing up the both sides of inequalities γxγxc1 and γx+γxY (refer to Eq. (12a)) results into 2γxY+c1, which is Eq. (13a); therefore, Eq. (13a) is proved. By similar calculations on Eq. (12b), Eq. (13d) can also be proved (summing both sides of inequalities). To prove Eq. (13b), it is required to recall the definition of Y (Eq. (9)):

Recall:

YmaxYOAYOBYOC

Therefore,

YOBY
YOB+YOBY+YOB
2YOBY+YOBE14
2YOBβz2Y+YOBβz2

Similarly,

2YOCβz3Y+YOcβz3E15

Now, in a similar procedure, by summing both sides of inequalities (14) and (15), the following inequality is obtained:

2YOBβz2+YOCβz3Y+YOBβz2+Y+YOcβz3E16

Again, definition of Y (Eq. (9)) leads to:

YOAY
0YYOA
0YYOAβz1

The following inequality is derived by adding both sides of inequalities (15) and (16):

2YOBβz2+YOCβz3YYOAβz1+Y+YOBβz2+Y+YOcβz3
2YOBβz2+YOCβz3Yβz1+βz2+βz3βz1YOBβz2YOBβz3YOCE17

By substituting βz1+βz2+βz3=1 (refer to Eq. (10a)) and βz1YOBβz2YOBβz3YOC=c1 (refer to Eq. (10b)), into the above inequality (Eq. (17)) the inequality in Eq. (8) is obtained:

2YOBβz2+YOCβz3Yc1E18

Recall from Eq. (12a):

γxYOB.βz2+YOC.βz3
2γx2YOBβz2+YOCβz3E19

Inequalities (18) and (19) conclude that 2γxYc1, which means that Eq. (13b) is proved. By implementing a similar procedure on Eq. (12b), Eq. (13c) can be proved as well. Therefore, the proof of lemma 1 is completed.

The proposed method outlined in the paper uses a reduced number of variables when compared to other methods (e.g., CWS). However, to solve for the robot’s stability, it is required to reduce the number of variables. For this, the Fourier-Motzkin elimination method is used to reduce the number of variables by one at each step of the process. That is, the βzi variables are eliminated through the procedure outlined in Eqs. (12) to (13) (refer to lemma 1). Subsequently, the proposed variable elimination method c1 and c2 are eliminated from the set of inequalities in (13). For this, the upper and lower bounds of c1 and c2 are determined based on Eq. (21). Such method is heavily based on the geometrical features of the virtual support triangular area depicted in Figure 4.

Without loss of generality, the vertices of the defined virtual contact triangle can be named in such a way that the x coordinates of the vertices satisfy Eqs. (20).

xOCxOBxOAE20a

and,

yOAyOB=yOCE20b

Figure 5 illustrates the possible different contact triangles where Eqs. (20) is satisfied (thus, any three contact points can be used in the proposed approach provided the X-axis of the contact triangle is defined to be aligned with the BC line.

Figure 5.

Naming the vertices of the contact triangle to meet Eqs. (21a) and (21b).

Eqs. (20) results from the fact that the distances xOC,xOB,xOA, yOA,yOB,andyOC are greater than or equal to zero values (refer to Eq. (3)). By substituting Eq. (10a) in Eqs. (10b) and (10c), the boundary values of c1 and c2 (Eqs. (10)) are computed as:

c1minc1maxc1
c2minc2maxc2

where

maxc1=maxβz1.YOAβz2.YOBβz3.YOC=1×YOA+0+0=YOA
minc1=minβz1.YOAβz2.YOBβz3.YOC=0+01×YOB=YOB
maxc2=maxβz1.XOA+βz2.XOBβz3.XOC=0+1×XOB+0=XOB
minc2=minβz1.XOA+βz2.XOBβz3.XOC=0+01×XOC=XOC

The above formulations give rise to Eq. (21).

YOBc1YOAE21
XOCc2XOB

Accordingly, the coordinates for Y and X (defined in Eq. (9)) can be denoted as YOA and XOC, respectively, as per the following expression:

X=maxxOAxOBxOC=XOC
Y=maxyOAyOByOC=YOA

The result of the above process provides a set of inequalities that describe the boundaries of the defined variables (γx, γx,k1,k2,c1,andc2) as per Eq. (22):

k1=γx+γx
k2=γy+γy
k3=pxγyγy+γxγx
2γxYOA+c1;2γxYOAc1E22
2γyXOCc2;2γyXOC+c2
YOBc1YOA
XOCc2XOB

Eq. (22) describes all γs with respect to γx, however, there is a need to eliminate the γs parameters. Such elimination is achieved via the fourth step of the Fourier-Motzkin procedure as described below via Eqs. (23) and (24), where all inequalities are in terms of 2pyγx.

2pyγxpyYOAc1E23a
2pyγxpyYOA+c1+2py.k1E23b
2pyγxpxXOC+c2+k3+py.k1px.k2E23c
2pyγxpxXOCc2+k3+py.k1+px.k2E23d
2pyγxpyYOAc1E24a
2pyγxpyYOA+c1+2py.k1E24b
2pyγxpxXOC+c2+k3+py.k1px.k2E24c
2pyγxpxXOCc2+k3+py.k1+px.k2E24d

Since the right-hand side terms of Eqs. (24) have higher values when compared to the left-hand side terms, all 2pyγx terms in Eqs. (23) and (24) can be eliminated, resulting in the following set of 16 inequalities.

24a23ac1YOA
24a23bk1YOA
24a23ck3py.k1+px.k2+py.c1px.c2XOC.px+YOA.py
24a23dk3py.k1px.k2+py.c1+px.c2XOC.px+YOA.py
24b23ak1YOA
24b23bc1YOA
24b23ck3+py.k1+px.k2py.c1px.c2XOC.px+YOA.py
24b23dk3py.k1px.k2+py.c1+px.c2XOC.px+YOA.py
24c23ak3+py.k1px.k2+py.c1px.c2XOC.px+YOA.py
24c23bk3py.k1px.k2py.c1px.c2XOC.px+YOA.py
24c23cc2XOC
24c23dk2XOC
24d23ak3+py.k1+px.k2+py.c1+px.c2XOC.px+YOA.py
24d23bk3py.k1+px.k2py.c1+px.c2XOC.px+YOA.py
24d23ck2XOC
24d23dc2XOC

The symbol in the previous set of 16 inequalities is used to denote that the left-hand side of the corresponding inequality results in the right-hand inequality. Substituting the expression for Q in Eq. (9), Q=XOC.px+YOA.py, into the above 16 inequalities result in Eqs. (25) and (26).

k3Qpy.k1+px.k2py.c1+px.c2
k3Q+py.k1+px.k2+py.c1+px.c2
k3Qpy.k1px.k2py.c1px.c2
k3Q+py.k1px.k2+py.c1px.c2

Therefore,

k3Qpyk1+c1pxk2+c2E25

Similarly,

k3Qpy.k1+px.k2+py.c1px.c2
k3Qpy.k1px.k2+py.c1+px.c2
k3Q+py.k1+px.k2py.c1px.c2
k3Q+py.k1px.k2py.c1+px.c2

Therefore,

k3Q+pyk1c1+pxk2c2E26

and,

k1YOA+YOA,k2XOC+XOC
c1YOB+YOA,c2XOC+XOB

Now, by eliminating variablek3 from the set of inequalities, the Fourier-Motzkin method can continue. As discussed, eliminating variables step by step enables to determine the boundaries of all variables. Eliminating the last implicit variable k3 from Eqs. (25) and (26) results in Eq. (27).

Qpyk1+c1pxk2+c2Q+pyk1c1+pxk2c2
pyk1c1+k1+c1+pxk2+c2+k2c22Q
py(maxk1c1+px(maxk2c2Q
XOC.px+YOA.pyQE27

Following the definition of Q (Eq. (9)), Eq. (27) is always valid. The result of the above process is that the variables of interest (i.e., k1,k2,k3,c1,c2,αxi,αyi,βzi,andβz) are real values where each of such variables is obtained by changing the corresponding defined variable to the initial variables (i.e., fxi, fyi, fzi, fx, fy, τx, τy and τz). This process leads to the following set of expressions (Eq. (28)), which proves Theorem 1:

fxyOAysum.μfz
fyxOCxsum.μfz
fz>0E28
yOB.fzτxyOA.fz
xOC.fzτyxOB.fz
τminτzτmax

where

xOi=xixO,xO=xA+xB+xC3,
i=A,B,C
yOi=yiyO,yO=yA+yB+yC3,
i=A,B,C
xsum=xOA+xOB+xOC
ysum=yOA+yOB+yOC
τmin=μxOC+yOAfz+ysum.fxμτx+xsum.fyμτy
τmax=μxOC+yOAfzysum.fx+μτxxsum.fy+μτy

Eq. (28) provides the stability condition of the corresponding robot’s contact with the environment. That is, if the forces and torque values read from the corresponding force and torque (F/T) sensor on the robot (e.g., ankle) satisfy Eq. (28), then, such conditions indicate that the robot is stable. Otherwise, the robot is unstable. The stability results provided from Eq. (28), however, is a binary value (stable or not stable), which does not provide the degree of stability with which the given robot might be (How stable is the robot stable?). Furthermore, such results do not provide information to help guide the motions of the robot such that it does not move toward an unstable state or becomes marginally stable.

2.4 Stability margin and visualizing stability condition

Now that a set of mathematical formulations, Eq. (28), has been developed to enable to determine the stability condition of legged bipedal robots in binary logical terms (i.e., 1 → stable; 0 → unstable), a stability margin is needed. A stability margin based on the parameters used in this work would enable us to know how stable the robot is or how close the robot is from becoming unstable. In this work, a stability margin based on the five parameters used in the proposed formulations (i.e., fx, fy, fz, τx, τy, and τz) is provided to enable us to know how stable the robot is or how close the robot is from becoming unstable. To this aim, a radar chart is proposed as a practical solution to visualize multivariate data on a 2-dimensional surface. Each variable of interest has an axis starting from a common center point from where the axes for the remaining variables emanate. On each axis, the acceptable range of each variable is represented. The maximum values of the five parameters form a polygon called stability polygon. While the values of the five parameters computed based on the state of the robot are used to form another polygon, which is referred to in this paper as the data polygon in Figure 6. As long as the data polygon lies inside the stability polygon, as shown in Figure 6a, all inequalities are satisfied, and the robot is said to be stable. In contrast, if one or more of the vertices of the data polygon crosses the boundaries of the stability polygon the robot becomes unstable as illustrated in Figure 6b.

Figure 6.

Stability polygon on a radar graph.

The proposed radar graph is divided into different fuzzy regions each indicating how stable the robot is. Each region can be defined based on user preferences, desired levels of desired stability, or robot characteristics. To illustrate such aspects,, in this paper, the allowable range for each of the fx, fy, fz, τx, τy, and τz variables are divided into five severity regions. Such fuzzy stability characteristics are then applied to a life-size humanoid robot having 29 DoF. These stability levels are expressed as fuzzy variables and their ranges are presented in Table 1. If the values of the five parameters are inside the region closer to the center of the radar graph, it indicates that the robot is more stable when compared to a case where the parameter values are in regions closer to the borders of polygons, which would indicate that the robot is approaching instability.

ColorRangeSeverity
Green[0 to 0.5]Highly stable
Yellow(0.5 to 0.7]Stable
Orange(0.7 to 0.85]Moderate-risk stability
Red(0.85 to 0.95]High-risk stability
Dark red(0.95 to 1]Approaching instability

Table 1.

Stability regions in the radar chart.

To build the radar graph the five parameters fx, fy, τx, τy, and τz are normalized based on the six variables fx, fy, fz, τx, τy, and τz to obtain fxm,fym,τxm,τym, and τzm . Among all the six variables, fz has a direct impact on each of the five normalized variables and as a result does not appear as a normalized variable itself. The formulations to obtain fxm,fym,τxm,τym,τzm are presented in Eq. (29).

fxm=fxyOAysum.μfz0fxm1
fym=fyxOCxsum.μfz0fym1E29
τxm=2×τxyOA.fzyOB.fz2yOA.fz+yOB.fz0τxm1
τym=2×τyxOB.fzxOC.fz2xOB.fz+xOC.fz0τym1
τzm=2×τzτmax+τmin2τmaxτmin0τzm1
Advertisement

3. Results

The proposed methodology described in Section 2 was analyzed in simulation and via experimental tests using Transcend, a life-size humanoid robot (Figure 7) developed by 4Front Robotics Inc. and the University of Calgary.

Figure 7.

TRANSCEND: Experimental life-size humanoid robotic platform.

3.1 Simulation results

Before the proposed stability method was implemented on a real robot, a comprehensive simulation study was performed to evaluate its functionality and analyze and determine its limitations. To conduct the simulations, the commercial-off-the-shelf (COTS) multi-body dynamics simulation software Adams was used from where the stability of the robot of interest was determined. The software Adams enabled us to study the dynamics of the parts of the moving robot and determine how forces and loads are distributed throughout the robot affecting its stability. The results of such simulations in Adams were assumed to be accurate and then used to compare with the results of the proposed method. The consistency between the Adams and results obtained from the proposed methodology were used to determine the validity and accuracy of the proposed method. The performance of the method was assessed according to two complementary measures: (i) accuracy and (ii) reliability.

Accuracy is defined as the number of cases when both simulation and theoretical formulation produce identical results under the same robot state (i.e., stable or unstable). Such value is then divided by the total number of cases tested resulting in the accuracy value.

Reliability is defined as a measurement of the inconsistency in the results provided by the theoretical and the simulation tests under the same robot state. The purpose of this indicator is to determine how reliable is the proposed method. The inconsistency of the results is considered reliable when the mathematical formulation shows that the robot is unstable, but the simulation shows that it is stable. On the other hand, the inconsistency is considered unreliable when the mathematical formulation predicts that the robot is stable, while the simulation shows that it is not.

To be able to generate realistic results from the simulation that can be experimentally tested in a reproducible fashion, four terrain characteristics were used: (i) coefficient of friction, (ii) damping ratio, (iii) terrain stiffness, and (iv) penetration depth. These characteristics were defined on the contact surface between the robot’s foot and the ground. Obviously, such characteristics are dependent on the materials of both surfaces (the ground and the robot’s sole/foot), which was known (the robot and the terrain were engineered). The value of each of these four parameters used in the experimental tests was selected based on prior work in the Adams software [19] (see Table 2).

ParameterValue
Terrain stiffness109N/m
Coefficient of friction0.3
Damping6.5×103N.s/m
Penetration depth0,104,2.1×103mm

Table 2.

Contact characteristics used.

During each experimental test, the robot was positioned on a specific surface having four of the properties outlined in Table 2 (i.e., terrain stiffness friction, and damping). In turn, the robot was positioned in a given (selected) kinematic state after which the corresponding simulation was performed. Each simulation test was conducted three times and each simulation used a different penetration depth coefficient. The reason for such a testing scenario was to investigate the extent to which the proposed methodology can be used to determine the robot’s stability when standing on compliant (deformable) surfaces and not just solid (rigid) terrains. Although numerous surface conditions (e.g., slope, friction, etc.) were used during the experimental tests, for simplicity, in the context of this paper only three representative horizontal flat surfaces are used to exemplify the obtained results: surface 1, surface 2, and surface 3.

Surface 1: A solid surface with a penetration depth of zero.

Surface 2: A semi-solid surface with a penetration depth of 104, (and)

Surface 3: A compliant surface with a penetration depth of 2.1×103.

During each simulation case, the values of the contact forces, fxi and fyi, at the corresponding contact point Ci were varied from 0 to 100N between tests. Figure 8 illustrates the location of the three contact points on the robot’s sole used during the simulation and experimental tests. In the experimental tests such contact points were achieved by placing rubber bumpers on the robot’s feet at the locations shown in Figure 8.

Figure 8.

Location of the pre-defined three contact points (C1,C2,andC3) on the robot’s sole.

Figure 9 illustrates the robot’s stability on different values for fy2 on the three different surfaces. The bars denote the binary stability condition obtained from the proposed method (orange) and the simulation (blue bars).

Figure 9.

Stability results during the simulation as the robot stand on a flat horizontal surface when one of the contact forces (fy2) is varied.

From Figure 9, it is observed that the proposed methodology agrees 100% with the full-body dynamic simulation tests except in the case of surface 3, when a force fy2=10N was applied. Under such conditions, the simulations and proposed mathematical formulation indicate that the robot is in an unstable and stable state, respectively. This discrepancy is thought to be due to the fact that the simulated full-body dynamics is able to identify that the robot’s foot is sliding (due to the low friction that exist at the contact points) while experimentally such aspects were sometimes difficult to easily visualize (Figure 9). Figure 10 shows the corresponding motion of the robot’s foot when sliding on the surface and taken at different time steps causing the robot to lose stability and fall.

Figure 10.

Visualization of the foot’s motion when in an unstable condition.

The same procedure was also performed for the three components of the three contact points, fx2,fx3,fy1,fy2,andfy3 while varying the corresponding force caused by gravity at each simulation on a specific surface. Such tests produced similar results to the results shown in Figure 9. The results of these tests in terms of their accuracy and reliability are presented in Tables 35 for the specific surfaces used (i.e., solid, semi-solid, and compliant).

Surface #1Contact point 1Contact point 2Contact point 3
fx1fy1fx2fy2fx3fy3
Accuracy (%)72.710072.710081.8100
Reliability (Y/N)YYYYYY

Table 3.

Performance of the proposed method compared to the simulation on a flat horizontal surface 1.

Surface #2Contact point 1Contact point 2Contact point 3
fx1fy1fx2fy2fx3fy3
Accuracy (%)72.710072.710081.8100
Reliability (Y/N)YYYYYY

Table 4.

Performance of the proposed method compared to the simulation on a flat horizontal surface 2.

Surface #3Contact point 1Contact point 2Contact point 3
fx1fy1fx2fy2fx3fy3
Accuracy (%)10090.990.990.910081.8
Reliability (Y/N)YNYNYN

Table 5.

Performance of the proposed method compared to the simulation on a flat horizontal surface 3.

The obtained results show that the proposed method is successful in estimating the stability of the robot on all surfaces. With almost the same accuracy for the solid and semi-solid surfaces (Tables 3 and 4, respectively). Also, the method shows reliable results in all cases tested, which suggests that the proposed method can accurately predict all unstable conditions. The results show that the proposed methodology provides better results on solid surfaces and surfaces having small deformation (Table 5).

Figure 11 shows the corresponding radar charts for the test shown in Figure 9a. Figure 11a shows the robustness status of the robot when all contact force components are equal to zero (except for the vertical forces, fz, and caused by the robot’s weight). The obtained radar chart 10a shows a “highly stable” condition as all five parameters are within the green section of the chart. Figure 11b, as an unstable example, shows the case when the force fy2 was increased to 10 N. Figure 11c shows the case when the humanoid robot is in a “moderate-risk stability” region despite the fact that the force fy2 was increased to 15 N when compared to previous tests. Lastly, when the force fy2 was increased to 20 N, the robot is seen to lose stability. That is, the generated data polygon crosses the borders of the stability polygon where the robustness concept is not defined (Figure 11d).

Figure 11.

Robustness check for different force values of fy2 on a flat horizontal surface.

The proposed approach was also tested on slope surfaces. To this aim, three surfaces having slopes of 10, 20, and 30 degrees were used. The simulation settings used to test the stability on these surfaces were the same as provided in Table 2 and Figure 8.

The results on tilted surfaces having an angle between 10 and 20 degrees produced reasonable results with a stability accuracy value between 72 and 100%. Similar to the simulated tests on flat horizontal solid and semi-solid surfaces, the results are considered to be reliable. However, some of the results obtained for compliant surfaces were unreliable [18]. When increasing the surface slope to 30 degrees, it was observed that under the same settings used for the 20° sloped terrain, both the simulation and the proposed method show that the robot losses stability as expected without the robot receiving help via external forces (e.g., supporting itself from a banister of from any other surface with its hand).

3.2 Experimental tests

After analyzing and validating the proposed method in simulation, the method was experimentally tested on real humanoid hardware to examine the proposed method under real-world conditions. To test the proposed stability mechanism the humanoid robot, transcend (Figure 7) was used. To enable such tests a ROS (robot operating system) package was developed encoding the proposed formulations and configured to read sensor data from the robot’s F/T sensors in real time. Table 6 shows the pseudo-code for the developed ROS package.

InputsAlgorithm
  • Wrench at the location of the F/T sensor for each timestamp comprising three force values and three torque values: winst=fxfyfzτxτyτz

  • Friction coefficient value (μ).

  • The location of the contact points.

Step 1: Read the wrench data published by the F/T sensors (winst).
Step 2: Calculate the upper and lower boundaries of the six variables (fx, fy, fz,τx, τy, and τz) based on the given friction coefficient and predefined location of the contact points.
Step 3: Check whether the values of winst lie inside the specified boundaries obtained in step 2.
  • If all values of winst lie inside their corresponding related boundaries, then the robot is stable.

  • If one of winst values do not lie inside their corresponding boundaries, then the system is unstable.

Step 4: Publish the results of step 3.
Outputs
  • The stability condition for each timestamp.

Parameters used in the algorithm:
  • fx, fy, fz: The force values in the x-axis, y-axis, and z-axis, respectively, at the origin of the F/T sensor’s coordinate system.

  • τx, τy, τz: The torque values in the x-axis, y-axis, and z-axis, respectively, at the origin of the F/T sensor’s coordinate system.

Table 6.

The pseudocode of the ROS package was developed to test the robot’s stability.

To check the stability when standing on slanted surfaces, the robot was positioned on the corresponding surface standing on one of its feet. Then, the ROS package was executed, and the stability results were published continuously. The robot was placed on a flat rigid surface as well as on a bumpy sloped terrain. Once the robot was in place the slope value of the terrain was changed as the robot kept its state (did not attempt to maintain balance).

It was observed that when the stability condition of the robot changes, the proposed method is able to accurately perceive such changes and compute the stability of the robot while publishing the updated stability condition in real time. After numerous experimental tests on various terrain conditions, it is concluded that the proposed method accurately predicts the robot’s stability conditions on various surfaces having different friction coefficients, slopped conditions, and levels of surface characteristics, such as diverse bumpiness conditions.

Advertisement

4. Discussion

With an increasing demand for utilizing robotic tools in many hazardous/labor-intense working environments, such as mining and forestry, the need for obtaining a comprehensive and practical robotics approach using humanoid robots becomes essential. Although remarkable studies have been conducted to enable humanoids to execute tasks in environments engineered for humans, one of the biggest problems prohibiting the full integration of these systems in complex labor-intense working environments is that they are incapable of successfully maneuvering through such complex chaotic spaces where they must maintain their stability while performing operations. The main reason for this incapability is the lack of a universal (yet fast) solution to the problem of humanoid stability on complex and unstructured terrains. Most of the relevant studies conducted on humanoids’ stability have focused on humanoids walking on flat horizontal terrains which do not represent many real-world scenarios (e.g., urban search and rescue operations inside collapsed infrastructure). Prior work on multi-legged robot stability including the multi-contact approaches, such as the CWS and the ZMP methods, are limited as they do not provide effective solutions for cases where the robot’s feet contact the environment on multiple noncoplanar surfaces.

The solution presented in this chapter allows humanoids to use not only their feet but also any other parts of their body to contact the environment to enhance their stability and hence improve their locomotion. In this regard, the modified version of CWS discussed in this work provides a generic approach that extends the capabilities of the ZMP and the traditional CWS approaches. Although the modified CWS method provides an effective procedure for determining the stability of robots in multi-contact locomotion procedures, there are several improvements that can be conducted to further enhance the approach. Some of these improvements include:

  • Develop suitable feedback controllers using stability, such as fuzzy feedback techniques, to control the robot’s forces as well as torques in such a way that robot always stays in a stable condition. For this, improved position controllers combined with force/torque-based controllers should be formulated.

  • With the presented stability formulation planning, the path of a humanoid has the capability to be enhanced as the formulation could provide useful information to determine the robot’s stability based on future movements as opposed to simply determine if the robot is stable but rather determining the robot’s stability with respect to the various motions that the robot could execute.

Although the presented stability method provides a rigorous theoretical framework, the method would benefit from a detailed experimental comparison with respect to previously formulated stability determination approaches to precisely quantify its superiority in the real-world scenario, hence improving human-robot collaboration. Human-robot collaborative systems (HRCS) have emerged as a solution that aims to satisfy the current demand for highly personalized products, enhance quality, and reduce costs by combining the skills of humans and robots within a shared workspace. However, the safety of human operators, and people in general, is of major concern when located in collaborative workstations and/or common areas. In this regard, it is envisioned that the methodology presented in this manuscript can significantly improve safety assurance practices in diverse sectors, including current applications of the manufacturing industry [20]. In this sense, the integration of human-robot interactions and safety standards has been analyzed [20], where a favoring inclination to techno-centered practices has been noticed, where policies designed for rigid automation are being used for HRCS alike. This, however, brings additional risks to the well-being of human operators.

Industry 4.0, as the current transformation of manufacturing systems, introduces a paradigm shift supported by new robotic technologies that together enable the decentralization of production processes via HRCS [21, 22]. For instance, collaborative robots (or cobots) have been developed with intuitive interfaces, sensors, and software to aid human operators in performing demanding physical tasks (i.e., handling dangerous materials or executing repetitive operations) [23]. Furthermore, since HRCS aims to achieve higher flexibility in the production of diverse-sized volumes, HRCS is being adopted in the manufacturing and other industries as a solution that mixes, within a shared workspace, the accuracy and repeatability skills of collaborative robots with the dexterity and cognitive capabilities of human operators. This semi-automated schema, which integrates modern robotics and legacy manual work, is a promising instrument for mass customization goals [24] in which the methodologies presented in this manuscript will find useful applications.

Advertisement

5. Conclusions

The proposed theoretical formulation based on the CWS stability approach was found to be applicable to any continuous (e.g., floor or loose dirt) or discrete (e.g., sharp rocky surface) contact surface that can be represented by an arbitrary set of three contact points. The proposed approach provides the ability for a fast and efficient stability computation for multi-legged robots operating in a broad spectrum of applications. Hence, it provides opportunities to deploy humanoids and other types of robots in various real-world environments as complex as the environments encountered in hazardous urban search and rescue operations. The developed approach enables fast and efficient stability computation that can be utilized in a wide range of applications, such as hazardous spaces, including moving inside collapsed buildings. The introduced formulations equip roboticists with a superior stability tool that will enable them to better control robots walking in complex potentially dynamic environments. The results from simulations and experimental tests show that the proposed method is a powerful tool capable of computing stability in a very fast way with reasonable accuracy and reliability. As a result, the proposed approach provides relevant information that can be used to control the body motions of multi-legged robots so that their actions do not compromise their stability.

References

  1. 1. Vukobratović M, Borovac B. Zero-moment point—Thirty five years of its life. International Journal of Humanoid Robotics. 2004;1(01):157-173
  2. 2. Takao S. Yokokohji Y. Yoshikawa T. FSW (feasible solution of wrench) for multi-legged robots. In: 2003 IEEE International Conference on Robotics and Automation. IEEE. 2003;3:3815-3820
  3. 3. Dai H. Robust multi-contact dynamical motion planning using contact wrench set [A thesis]. Massachusetts Institute of Technology. 2016
  4. 4. Wieber P-B. On the stability of walking systems. In: Proceedings of the International Workshop on Humanoid and Human Friendly Robotics. 2002
  5. 5. Hirukawa H. Humanoid robotics projects in Japan. In: Proceedings of the Understanding Humanoid Robots Workshop at IEEE ICRA 2006. 2006
  6. 6. Dai H, Valenzuela A, Tedrake R. Whole-body motion planning with centroidal dynamics and full kinematics. In: 2014 IEEE-RAS International Conference on Humanoid Robots. IEEE. 2014. pp. 295-302
  7. 7. Koyanagi Ki, et al. A pattern generator of humanoid robots walking on a rough terrain using a handrail. In: 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE. 2008. pp. 2617-2622
  8. 8. Caron S, Pham Q-C, Nakamura Y. Leveraging cone double description for multi-contact stability of humanoids with applications to statics and dynamics. Robotics: Science and Systems. 2015;11:1-9
  9. 9. Escande A, Kheddar A, Miossec S. Planning contact points for humanoid robots. Robotics and Autonomous Systems. 2013;61(5):428-442
  10. 10. Herzog A, Rotella N, Schaal S, Righetti L. Trajectory generation for multi-contact momentum control. In: 2015 IEEE-RAS 15th International Conference on Humanoid Robots (Humanoids). IEEE. 2015. pp. 874-880
  11. 11. Zheng Y, Lin MC, Manocha D, Adiwahono AH, Chew C-M. A walking pattern generator for biped robots on uneven terrains. In: 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE. 2010. pp. 4483-4488
  12. 12. Wang Z, Harada K, Wan W. Multi-contact Stability of Humanoids using ZMP and CWC. In: 2019 IEEE-RAS 19th International Conference on Humanoid Robots (Humanoids). IEEE. 2019. pp. 126-131
  13. 13. Caron S, Pham Q-C, Nakamura Y. Stability of surface contacts for humanoid robots: Closed-form formulae of the contact wrench cone for rectangular support areas. In: 2015 IEEE International Conference on Robotics and Automation (ICRA). IEEE. 2015. pp. 5107-5112
  14. 14. Wiedebach G, Bertrand S, Wu T, Fiorio L, McCrory S, Griffin R, et al. Walking on partial footholds including line contacts with the humanoid robot atlas. In: 2016 IEEE-RAS 16th International Conference on Humanoid Robots (Humanoids). IEEE. 2016. pp. 1312-1319
  15. 15. Kagami S, Kitagawa T, Nishiwaki K, Sugihara T, Inaba M, Inoue H. A fast dynamically equilibrated walking trajectory generation method of humanoid robot. Autonomous Robots. 2002;12(1):71-82
  16. 16. Caron S. Computational foundation for planner-in-the-loop multi-contact whole-body control of humanoid robots [A thesis]. University of Tokyo. 2016
  17. 17. Trinkle JC, Pang JS, Sudarsky S, Lo G. On dynamic multi-rigid-body contact problems with Coulomb friction. ZAMM-Journal of Applied Mathematics and Mechanics/Zeitschrift für Angewandte Mathematik und Mechanik. 1997;77(4):267-279
  18. 18. Dastangoo P. Multi-contact stability of multi-legged robots operating in unstructured spaces [MS thesis]. Schulich School of Engineering. 2021
  19. 19. Daniel WW. MSC.Software. Contact modeling presentation, sheet 10. Available from: https://www.insumma.nl/wp-content/uploads/SayField_Verheul_ADAMS_Contacts.pdf
  20. 20. Segura Parra P, Lobato-Calleros O, Ramirez-Serrano A, Soria I, Human-robot collaboration systems: Structural components for current manufacturing applications, Journal of Advances in Industrial Manufacturing Engineering. Nov 2021;3:114-125
  21. 21. Costa Mateus JE, Aghezzaf E-H, Claeys D, Limère V, Cottyn J. Method for transition from manual assembly to Human-Robot collaborative assembly. IFAC-PapersOnLine. 2018;51(11):405-410
  22. 22. Mateus JEC, Claeys D, Limère V, Cottyn J, Aghezzaf E-H. Ergonomic and performance factors for Human-robot collaborative workplace design and evaluation. IFAC-PapersOnLine. 2019;52(13):2550-2555
  23. 23. Parra PS, Calleros OL, Ramirez-Serrano A. Human-robot collaboration systems: Components and applications. In: International Conference of Control, Dynamic Systems, and Robotics, 2020. 2020. pp. 1-9
  24. 24. Ding Y, Xu W, Liu Z, Zhou Z, Pham DT. Robotic task oriented knowledge graph for human-robot collaboration in disassembly. Procedia CIRP. 2019;83:105-110

Written By

Parastoo Dastangoo and Alejandro Ramirez-Serrano

Submitted: 15 May 2022 Reviewed: 25 October 2022 Published: 30 December 2022