Skip to main content

Inverted Modelling: An Effective Way to Support Motion Planning of Legged Mobile Robots


This paper presents an effective way to support motion planning of legged mobile robots—Inverted Modelling, based on the equivalent metamorphic mechanism concept. The difference from the previous research is that we herein invert the equivalent parallel mechanism. Assuming the leg mechanisms are hybrid links, the body of robot being considered as fixed platform, and ground as moving platform. The motion performance is transformed and measured in the body frame. Terrain and joint limits are used as input parameters to the model, resulting in the representation which is independent of terrains and particular poses in Inverted Modelling. Hence, it can universally be applied to any kind of legged robots as global motion performance framework. Several performance measurements using Inverted Modelling are presented and used in motion performance evaluation. According to the requirements of actual work like motion continuity and stability, motion planning of legged robot can be achieved using different measurements on different terrains. Two cases studies present the simulations of quadruped and hexapod robots walking on rugged roads. The results verify the correctness and effectiveness of the proposed method.

1 Introduction

In the field of mobile robot, legged robots have better terrain adaptability owing to leg mechanisms, attracting attention around the world. Several legged robots have been developed in recent years [1,2,3]. Motion planning of legged robot relies on the modelling and measurement of walking ability. Compared with wheeled or tracked robots, the adaptability to complex terrain is one of the outstanding merits of legged robots. The efficient measurement of motion performance on complex ground is also an important task to support motion planning.

There can be categorized as two kinds of presentation models for motion performance. One is based on robot coordinate system, the other is on terrain coordinate system. In robot-based presentation model, the ground coordinates are transferred to the robot system. Motion ability of a certain robot on different grounds can be measured by stability. One of the widest used measurements is called Support Pattern [4], which is enveloped by n contact points of n-legged robot. Stable walking was achieved via the vertical projection of the center of gravity (COG) locating in Support Pattern [5], following by free gait, crab gait, spinning gait, turning gaits, etc. Cheetah 3 [6] from MIT adopted this model in the controller, contributing stair-climbing locomotion. As for hexapod robot, the walking stability and kinematic feasibility were simultaneously considered by the criterion of COG in Octopus-III from SJTU [7, 8]. When it comes to biped robot, Support Pattern is converted into an envelope range where the foot touches the ground. Figliolini and Ceccarelli [9, 10] designed the EP-WAR biped robot and achieved omnidirectional stable motion on flat ground. Valkyrie [11] robot was assisted by a motion reflector for performing specific tasks with minimal gait consumption.

The criterion of Zero Moment Point (ZMP) [12,13,14] is an analogous criterion for dynamic motion considering acceleration. This standard was first used in biped robots and was later widely adopted by legged robots. Based on ZMP trajectory, TITAN-XIII [15] robot proposed a dynamic walking algorithm, considering vertical acceleration trajectory which is suitable for small running states.

The other presentation model for motion performance is based on terrain-body system. The movement can be abstracted as an equivalent mechanism, transferring the body parameters to the terrain coordinate system. The motion ability of robots can be measured under a certain terrain. For example, movement can be regarded as a parallel mechanism based on metamorphosis [16]. The contact points were regarded as the hinge points. The body motion was equivalent to the relative displacement of the moving platform in the parallel mechanism. Xu and Ding [17, 18] analyzed the equivalent parallel models of different motion states corresponding to different degrees of freedom. The effects of ground friction, body height and stride on gait were also analyzed by the equivalent metamorphic mechanisms.

Likewise, Liang and Ceccarelli [19] proposed a waist-trunk parallel mechanism for the torso movement of humanoid robots. A series of 3-UPS mechanism and 6-UPS mechanism were designed to imitate the human torso movement. The equivalent series mechanism can also be used for single-leg robots. For example, Uniroo [20], MIT’s monopod robot, was abstracted as a virtual serial mechanism. By analyzing the force on the end of feet, the force on each joint was distributed based on the principle of the balance of joint force and moment.

Inverted pendulum is another common model of legged robot. Unlike equivalent parallel or serial mechanism, the total mass is concentrated in the Center of Mass (CM), inferring the force and torque of the joints by solving dynamic equations based on the inverted pendulum model. DARPA’s biped robot Atlas [21, 22] adopted a Linear-Inverted-Pendulum-Model (LIPM) to optimize the COG trajectory using differential dynamic programming to achieve dynamic motion in complex environments. Another kind of inverted pendulum is the Spring-Loaded-Inverted-Pendulum (SLIP) [23, 24], which was characterized by a spring located in leg mechanism to cushion ground impact and store energy.

As for quadruped robots, Virtual Leg [25] is established. When the gait factor decreases, the robot switches to a dynamic gait. The four feet are divided into two groups of alternating workings. The gait can be trot, pace, or bound [26]. The two feet that touch the ground at the same time contribute equally to the robot, and can be reduced to a virtual leg mechanism. Cheetah 2 [27] and BigDog [28], for example, adopted similarly simplified models in which the leg mechanism cushions the impact of gravity to maintain static and dynamic mobility with a large load.

The above models established the performance measurements of legged robot rely on corresponding equations. The walking performance largely depends on the adaptability to various kinds of terrain of leg mechanisms. However, these presentations depend on the equations established by individual model on certain ground. The main contribution of this paper, Inverted Modelling, is to establish a global performance presentation framework. Theoretically, there are infinite types of leg mechanisms and terrain types. This framework does not rely on specific leg mechanisms or specific terrain, but analyzes global walking performance. The motion model of robot is flipped: taking ground as moving platform and the body as static platform. Based on Inverted Modelling, all motion performance can be expressed in static fixed framework. Constrain factors and motion performance measurements are also purposed for stable walking. Simulation results show the successful applications of this model in two legged-robot cases.

In the following, an overview of Inverted Modelling is illustrated in Section 2. Sections 3 and 4 show the kinematics/kinetics-related performance measurements using Inverted Modelling respectively. Two cases of gait planning of quadruped robot and hexapod robot by Inverted Modelling are given in Section 5 and the work is concluded in Section 6.

2 Basic Idea of Inverted Modelling

The motion of n-leg robot can be classified into two phases: leg-swing phase and body-movement phase. During the leg-swing phase, leg i \((1\le i\le n)\) is lifted, and leg j \((1\le j\le n, j\ne i)\) stays still. In the body-movement phase, all feet keep in contact with the ground to support the movement of the body and select the leg for the next leg-swing phase. Slip is absent in order to move stable on uneven terrain. According to equivalence principle [18], a parallel mechanism can be extracted from motion model. Taking a quadruped robot as an example, as shown in Figure 1a. The total mass of the robot is centered at the CM. In order to simplify the calculation, the forward motion direction is defined as the x-axis of the global coordinate system. All the coordinates are rotated 180° along this axis for Inverted Modelling, as illustrated in Figure 1b.

Figure 1
figure 1

Schematic diagram of Inverted Modelling in sagittal plane: a motion model of quadruped robot on uneven terrain, b Inverted Modelling of quadruped robot on uneven terrain

In Figure 1b, the robot body stays still, while the ground moves relative to the body. The normal plane of the gravity direction is defined as Projection Plane, which is used as a reference to project points on the surface of ground onto a two-dimensional plane. Every point from robot has its own corresponding point on Projection Plane along the normal vector. The merit on one hand is that the points from the robot, such as CM and contact point can be projected as COG and Center of Contact (COC) as well, which are measurements of the stability margin. The convex hull whose vertexes are COCs is Support Pattern, highlighted as red lines. On one other hand, the estimated height/gradient map of ground can be described with the Projection Plane, which are key measurements of terrain (see Section 3.3).

The coordinate vector of a certain point is set as \({\varvec{v}}={\left({x}_{v}, {y}_{v}, {z}_{v}\right)}^{\mathrm{T}}\) in Inverted Modelling, which can be obtained by the corresponding point on the robot \({\varvec{u}}={\left({x}_{u}, {y}_{u}, {z}_{u}\right)}^{\mathrm{T}}\):

$$\left[ {\begin{array}{*{20}c} {\varvec{v}} \\ 1 \\ \end{array} } \right] = {\varvec{R}}_{{x\uppi }} \cdot \left[ {\begin{array}{*{20}c} {\varvec{u}} \\ 1 \\ \end{array} } \right],$$

where \({{\varvec{R}}}_{x\uppi }\) indicates a homogeneous transformation matrix for rotation of π about the x-axis, which is \(\mathrm{diag}(1,-1,-\mathrm{1,1})\). All points need to be converted back to the original coordinate system for the use in the robot control system. Represented as a homogeneous matrix as \({}_{{T_{1} }}^{{B_{1} }} {\varvec{T}}\), the body pose can be deduced by transformation between coordinate systems as

$${}_{{T_{1} }}^{{B_{1} }} {\varvec{T}} = {\varvec{R}}_{{x\uppi }}^{{ - {1}}} \cdot {}_{{B_{2} }}^{{T_{2} }} {\varvec{T}}^{ - 1} \cdot {\varvec{R}}_{{x\uppi }} ,$$

where \({}_{{B_{2} }}^{{T_{2} }} {\varvec{T}}\) is the relative pose of the ground to the body in Inverted Modelling.

There are three key problems in gait planning: pose optimization, leg sequence selection, and foothold selection [29]. These issues are mainly related to workspace of leg mechanism, which is established by kinematic equations, and terrain data, which can be obtained by external device. Especially for parallel leg mechanisms, joint movement constraints and interference of links result in smaller workspaces. Since the body is taken as a fixed frame, the workspaces of leg mechanisms also stay still, calculated by kinematics equations and their forward/inverse solutions. The range of motion is that all workspaces of leg mechanisms must intersect with the ground, otherwise some of legs will fail to touch the ground. The foothold must be located in the intersection area of the ground and workspaces. In the body-movement phase, stable motion of robot is displayed with the help of moving platform. The performance measurements will be described in detail later in Sections 3 and 4. Therefore, gait problem of legged robots can universally be analyzed by Inverted Modelling in both phases, regardless of any kind of leg mechanisms.

3 Kinematics-related Performance Measurements Using Inverted Modelling

In this section we will introduce several kinematic measurements. The first three ones are used as kinematic constrains, specifying the range of motion of mechanisms. After that we describe two performance measurement: motion continuity and stability. In the Inverted Modelling, constraints are limitations of input parameters in kinematics equations, and performance measurements are used for the optimal goal of equations.

3.1 Stability Margin

The stride of motion in a quadruped robot is restricted by the stability constrains. The principle of motion stability is that the Zero Motion Point (ZMP) of vehicle always lies in the support polygon formed by COCs. As depicted in Figure 2, the resultant force of inertial force \({{\varvec{F}}}_{\mathrm{I}}\) and gravity \({{\varvec{F}}}_{\mathrm{M}}\) is projected onto the projection plane, which locates the position of ZMP. The coordinates of ZMP is obtained in Ref. [30] as

$$\begin{gathered} x_{zmp} = \frac{{\sum\limits_{i = 1}^{n} {m_{i} \left( {\ddot{z}_{i} + g} \right)x_{i} } - \sum\limits_{i = 1}^{n} {m_{i} \ddot{x}_{i} z_{i} } }}{{\sum\limits_{i = 1}^{n} {m_{i} \left( {\ddot{z}_{i} + g} \right)} }}, \hfill \\ y_{zmp} = \frac{{\sum\limits_{i = 1}^{n} {m_{i} \left( {\ddot{z}_{i} + g} \right)y_{i} } - \sum\limits_{i = 1}^{n} {m_{i} \ddot{y}_{i} z_{i} } }}{{\sum\limits_{i = 1}^{n} {m_{i} \left( {\ddot{z}_{i} + g} \right)} }}. \hfill \\ \end{gathered}$$
Figure 2
figure 2

Derivation of ZMP location

If the robot adopts a slower crawling gait, the acceleration is negligible, and ZMP coincides with COG at this time. The Stability Margin (SM) can be defined as the shortest distance between the ZMP and the support polygon as a performance index of stability margin. If SM is nonpositive, the movement is unstable and constrained. Conversely, the larger the SM, the higher the motion stability.

3.2 Kinematic Margin

In previous studies [31], leg sequence is obtained by selecting the leg with the smallest Kinematic Margin (KM). KM is defined as the distance from the contact point to the boundary of the workspace in the opposite of the forward direction. This definition applies to gaits where the body is always parallel to the ground. Considering the arbitrariness of ground conditions, in this paper, the KM is defined as follows: the intersection area of the ground and the workspace is Reachable Workspace, the projection of which is called Projection Workspace. In Projection Workspace, KM is defined as the distance from the outer edge of Projection Workspace to COC in the same direction as the ground motion.

3.3 Terrain Adaptability

The walking ability of legged robots depends on the adaptability of its leg mechanisms to the terrain. The surface of the ground is estimated by data from sensors like cameras and lidars, then discretized for description of obstacles, gaps, and slopes that may appear on complex ground. The ground is assumed to be a 2.5D height map. The height and gradient map can be contoured onto Projection Plane, which is used as an evaluation map for motion planning. For example, Figure 3 reflects the height and gradient of the rugged road surface on the projection surface in the form of contour respectively. These maps can be used in Inverted Modelling as terrain indicators to choose foothold.

Figure 3
figure 3

Diagram of terrain and projection plane: a contour map of ground height, b contour map of ground gradient

The evaluation of terrain is calculated as

$$\delta (z,\nabla ) = \left\{ {\begin{array}{*{20}c} {1,} & {z \in [z_{\min } ,z_{\max } ],\;\nabla \in [0,\nabla_{\max } ],} \\ {0,} & {\text{else,}} \\ \end{array} } \right.$$

where the δ-function is a logical function of the terrain evaluation index. For any point in the workspace of leg i, if and only if the height and gradient of this point meet the landing requirements, the point is considered to be within the feasible region; otherwise it is located in forbidden area. All points from the workspace are projected to the projection plane, as shown in Figure 4.

Figure 4
figure 4

Foothold evaluation on the projection plane (Top view)

For the points from the Reachable Workspace, an evaluation function \(d(x,y,z)\) is set as

$$\begin{gathered} d(x,y,z) = \delta (z,\nabla ) \cdot (u(x,y)_{\max } - u(x,y)), \hfill \\ u(x,y) = \left\| {{\varvec{QP}}(x,y)} \right\|_{2} . \hfill \\ \end{gathered}$$

δ-function is shown in Eq. (4) and \(u(x,y)\) represents the vector from point \(Q(x,y)\) in the feasible region to the ideal foothold \(P({x}_{0}, {y}_{0})\). The ideal foothold is always located at the point with the largest span in the forward direction. If the point is in forbidden area, then select the nearest one.

The terrain adaptability of the robot can be measured by Eq. (5). In Reachable Workspace, the remaining area excluding all forbidden areas is the range of the foothold. The larger the range of foothold selection, the stronger the ground adaptability. When moving on an obstacle or a slope, if and only if Reachable Workspace of all legs exists, the robot is considered to have the ability to step over the obstacle or move on this slope.

3.4 Motion Continuity

In the workspace of the leg mechanism, the contact point should be as far away as possible from the boundary points, otherwise it will affect the kinematic margin and cause discontinuous movement; the boundary points of the workspace may also lead to the singularity of the leg mechanism. During the body-movement phase, all n legs of the n-legged robot are on the ground, supporting the movement of the body. The ground moves relative to the body, but the positions of the n footholds on the ground still remain unchanged. The problem of gait planning is to find the proper posture of the ground relative to the body, so that n contact points fall in a better position in their respective workspaces. To describe the foothold in the workspace, establish the foothold measurement equation:

$$\begin{gathered} \hfill \left\| {\widehat{{{\varvec{r}}_{Fi} }}(x,y,z) - {\varvec{r}}_{n} (x,y,z)} \right\|_{2} = \max \left\| {{\varvec{r}}_{Fim} (x,y,z) - {\varvec{r}}_{n} (x,y,z)} \right\|_{2} , \\ \hfill (m = 1,2, \cdots ,k,\quad n = 1,2, \cdots ,p) \\ \end{gathered}$$

where \(\widehat{{{\varvec{r}}}_{Fi}}\) is the foothold of leg i in its workspace, and \({{\varvec{r}}}_{Fim}\) is the position of m boundary points of the workspace. Calculate the variance of the sum of the distances between all l points \({{\varvec{r}}}_{k}\) and boundary points. The point with the smallest value is the foothold in the workspace.

Figure 5 shows the motion continuity evaluation of quadruped robot by using Inverted Modelling. The result of Eq. (6) is shown as the color of points in the workspaces. The warmer the color, the smaller the variance and the closer it is to the ideal foothold. After determining the foothold, the problem focuses on how to solve the ideal pose of the ground so that the contact point is close to the foothold. Some search algorithm is proposed to calculate the ideal posture of the body [32], but only for linear boundary conditions and not for the workspace of any leg mechanism. Here, we plan a method for decoupling the pose and the position, which successfully calculates the posture and position of the ground relative to the body, reducing the amount of calculation and facilitating the real-time control of the robot. After n footholds are obtained by Eq. (6), a fitting plane is linearly returned, which is always parallel to the static platform. According to the nature of linear regression, the variance of the sum of the distances between this plane and the four contact points is the smallest, making the relative positions between the contact points and the foothold more similar. Each foothold should be as close as possible to the foothold in their workspace. Thus, a measurement function is set as

$$f(x,y,z) = \sum\limits_{i}^{n} {\left\| {\widehat{{{\varvec{r}}_{Fi} }} - {\varvec{r}}_{Fi} (x,y,z)} \right\|_{2} } ,$$
Figure 5
figure 5

Magnitudes employed to characterize the motion continuity of quadruped robot by using Inverted Modelling

where \(\widehat{{{\varvec{r}}}_{Fi}}\) is obtained from Eq. (6), and \({{\varvec{r}}}_{Fi}\) is the coordinate of the ith contact point on the ground. Calculate the distances between the n contact points and footholds. The position with the smallest distance is the ideal posture of the ground, as shown in Figure 5. The range of movement of the ground relative to the body is: 1) the contact points on the ground must not exceed their respective workspaces; 2) the ZMP must be within the support polygon on Projection Plane.

3.5 Motion Stability

Stability is a necessity for the continuous movement of legged robot. In order to prevent the robot from overturning during movement, the ZMP must fall within the support polygon at any time during the static gait, and a large SM is guaranteed as much as possible. During the body-movement phase, if the leg to be lifted in the next cycle is leg i, then the contact points of leg 1, 2,…, i−1, i+1,…, n form a support polygon on the ground, and the ZMP of the robot needs to be as close as possible to the center of the largest inscribed circle of the support polygon. The further away from the support polygon boundary, the greater the SM and the higher the motion stability.

As shown in Figure 6, the Inverted Modelling based on motion stability is established, taking a quadruped robot as an example. Let leg i be the leg to be lifted in the next cycle. On the projection plane, the COC corresponding to the other legs constitute a support triangle. The incircle of support triangle is the ideal location for ZMP. Rewrite Eq. (7) as

$$f(x,\;y,\;z) = \sum\limits_{k \ne i}^{n} {\left\| {\widehat{{d_{k} }} - d_{k} (x,\;y,\;z)} \right\|_{2} } ,$$
Figure 6
figure 6

Magnitudes employed to characterize the motion stability of quadruped robot by using Inverted Modelling

where dk is the project distance from the COC to the ZMP of the kth leg, and \(\widehat{{d}_{k}}\) is its ideal length, which is defined as the distance from the inner center of the support triangle to the kth COC. For support polygon, the inner center is replaced as the point that is the furthest away from each side. In Figure 6, the warmer the color, the closer the point is to the ideal position. When Eq. (8) takes the minimum value, contact points are located in warmer areas, and ZMP is closest to the ideal position.

4 Kinetics-related Performance Measurements Using Inverted Modelling

In this section we will introduce kinetics-related performance measurement and their application. Foot friction constrains are introduced to prevent slipping, based on which the force distribution measurement is proposed for the balance on each contact point. This performance measurement is also an option for optimal motion performance.

4.1 Foot Friction Constrains

Considering the motion on a complex ground, the mechanical model of the robot is analyzed to obtain the balance of the reaction force of the foot. In this paper, it is assumed that the robot is in point contact with the ground, that is, there is only a force between the ground with no torque transmitted. Set the n-legged robot receive the principal force and the principal moment as \({\varvec{F}}={\left[{F}_{x},{F}_{y}, {F}_{z}\right]}^{\mathrm{T}}\) and \({\varvec{T}}={\left[{T}_{x},{T}_{y}, {T}_{z}\right]}^{\mathrm{T}}\) in body coordinate system. In order to evaluate the reaction forces at feet, four local foot coordinate systems are depicted in Figure 7. The ith foot reaction force can be described as in Ref. [33]:

$$\begin{gathered} {\varvec{W}} = \left[ {\begin{array}{*{20}c} {\varvec{F}} \\ {\varvec{T}} \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {{\varvec{C}}_{{1}} } & {{\varvec{C}}_{{2}} } & \cdots & {{\varvec{C}}_{{n}} } \\ {{\varvec{R}}_{{1}} {\varvec{C}}_{{1}} } & {{\varvec{R}}_{{2}} {\varvec{C}}_{{2}} } & \cdots & {{\varvec{R}}_{{n}} {\varvec{C}}_{{n}} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {{}^{{f}}{\varvec{f}}_{{1}} } \\ {{}^{{f}}{\varvec{f}}_{{2}} } \\ \vdots \\ {{}^{{f}}{\varvec{f}}_{{n}} } \\ \end{array} } \right] \\ = {\varvec{A}}{}^{{f}}{\varvec{f}}, \\ \end{gathered}$$
Figure 7
figure 7

Friction cone constrains located at the contact points


$$\begin{gathered} {\varvec{R}}_{i} = \left[ {\begin{array}{*{20}c} 0 & { - z_{i} } & {y_{i} } \\ {z_{i} } & 0 & { - x_{i} } \\ { - y_{i} } & {x_{i} } & 0 \\ \end{array} } \right], \hfill \\ {\varvec{C}}_{i} = \left[ {\begin{array}{*{20}c} {\cos (\beta_{i} )} & {\sin (\beta_{i} )\sin (\alpha_{i} )} & {\sin (\beta_{i} )\cos (\alpha_{i} )} \\ 0 & {\cos (\alpha_{i} )} & { - \sin (\alpha_{i} )} \\ { - \sin (\beta_{i} )} & {\cos (\beta_{i} )\sin (\alpha_{i} )} & {\cos (\beta_{i} )\cos (\alpha_{i} )} \\ \end{array} } \right], \hfill \\ \end{gathered}$$

where \({x}_{i}\), \({y}_{i}\), and zi are the coordinates of the ith contact point. The z-axis of foot coordinate system is vertical to the surface of terrain, which is rotated from the body coordinate system angle β about the y-axis and then angle α about the resulting x-axis. The vector \({{}^{f}{\varvec{f}}}_{i}={\left[{{}^{f}f}_{ix},\, {{}^{f}f}_{iy},\, {{}^{f}f}_{iz}\right]}^{\mathrm{T}}\) is foot reaction force described in foot coordinate frames. In order to prevent slipping, the vector needs to obey the following:

$$\sqrt {{}^{f}f_{ix}^{2} + {}^{f}f_{iy}^{2} } \le \mu \cdot {}^{f}f_{iz} ,$$

where µ is the static coefficient of friction of the ground. This equation is also depicted as the friction cone constrain in Figure 7. The combined direction of force of contact points on the ground cannot exceed the range shown by the friction cone.

4.2 Foot Force Distribution

It is vital to establish the foot force distribution equation to ensure the successive motion of legged robot without slipping. Foot forces can be calculated by Eq. (9). When the robot walks in a static gait, acceleration can be ignored. The robot is not subject to the additional forces and moment except gravity. If \(n\ge 3\), Eq. (9) has infinite group of solutions. Take one set of approximate solutions:

$${}^{f}{\varvec{f}}{\mathbf{ = }}{\varvec{A}}^{{\mathbf{ + }}} {\varvec{W}}{,}$$

where \({{\varvec{A}}}^{+}\) is the Moore-Penrose inverse of matrix A. If \(n=2\), like trotting gait in quadruped robots, \({{\varvec{A}}}^{+}={{\varvec{A}}}^{-1}\). The foot reaction force of each point can be obtained by Eq. (11). The values of forces of all points in workspaces are depicted in Figure 8.

Figure 8
figure 8

Magnitudes employed to characterize foot force distribution of quadruped robot by using Inverted Modelling

The color of points in workspaces in Figure 8 represents the force \({\Vert {{}^{{\varvec{f}}}{\varvec{f}}}_{i}\Vert }_{2}\). The warmer the color, the greater the force. In general, the more uniform the foot forces are, the better. Therefore, points with similar colors in the workspaces are selected as footholds. The minimum variance of forces is set as the objective function and the ideal posture of the ground relative to the body is obtained. In some special situations, it may be necessary to use a singular mechanism to make one leg bear a greater force. At that time, the leg selects the point with a larger force in its workspace with a relatively uniform one for the other feet. The posture of the ground can also be calculated based on these rules.

5 Cases Studies

5.1 Case 1: Gait Planning of Quadruped Robot based on Inverted Modelling

Many studies on gait have been performed before. Generally, the workspaces of leg mechanisms are simplified to regular geometric figures, such as circles and rectangles, which may not be applicable to parallel leg mechanisms. The rotation of the body is always ignored as well during motion planning. These limitations can be addressed by the Inverted Modelling. In each cycle of motion planning (see Figure 9), the ideal pose of the robot can be calculated in real time according to the performance indexes purposed before.

Figure 9
figure 9

Flowchart for proposed gait algorithm using Inverted Modelling

In the body-movement phase, the corresponding ideal posture can be calculated according to the previously proposed performance measurements. If the result is within the boundary condition, execute the body movement. The pose of the body change supported by all legs. After the body movement, the next swing leg is determined based on KM. The position of its foothold is selected by substituting discrete ground data into Eq. (5). The foothold is also the end of the foot trajectory. During the leg-swing phase, NURBS curve is planned according to the contact point, foothold and ground information in the area [34]. One leg is lifted and follows the planned trajectory. The NURBS curve can theoretically be adapted to any terrain. Generate the ground envelope based on ground height, slope, surface shape and other factors, and add information such as the position, speed, and acceleration of key points to improve the flexibility and accuracy of the foot end trajectory [35]. If the ground is flat, the gait parameters will be repeated periodically. That is, the periodic gait is generated.

According to the gait algorithm, the UP-2-RUS-4R leg mechanism quadruped robot is selected as an example [36]. The fixed and movement platforms of the leg mechanism are connected by one UP and two RUS branch chains, as shown in Figure 10a1. The movement platform has three degrees of freedom. Figure 10a2 shows that Monte Carlo method is used to obtain the workspace of the end of the leg mechanism after the inverse kinematics. The top view of workspace is shown in Figure 10a3. In the x direction, the total span of the workspace is about 2000 mm. However, the shape and volume of workspace can hardly be described in simple geometry.

Figure 10
figure 10

Quadruped robot walking with free gait: a1 UP-2-RUS-4R quadruped robot leg mechanism model, a2 UP-2-RUS-4R leg mechanism workspace, a3 UP-2-RUS-4R leg mechanism workspace (top view), b1b4 screenshots of periodic gait simulation on even terrain, c1 comparison of motion continuity performance between Inverted Modelling and traditional gait, c2 stability margin of quadruped robot during static walking

We simulate the robot walking on the even terrain as shown in Figure 10b. In each cycle, the body moves firstly to meet the stability margin, and then one leg is selected to step forward. The posture of body is planned based on the premise of motion continuity of the movement using the Inverted Modelling. According to the terrain adaptability criterion, the foothold is selected at the maximum amplitude along the forward direction due to the absence of obstacles on the ground. The value of SM when walking is set to be 50 mm.

The blue trace in Figure 10b indicates the trajectory of the body during the travel. The three instantaneous UG motion simulation screenshots are captured and their Inverted Modelling diagrams are shown in Figure 10c1‒c3 and d1‒d3 respectively. In each moment, the robot calculates the body posture and moves based on the positions of the four feet using Inverted Modelling. After processing the ground information, the next foothold is selected outside the forbidden zone. The gait generated by Inverted Modelling steadily support the quadruped robot to complete the omnidirectional movement continuously under complicated terrain.

The blue arrows in Figure 10b indicate the vector of motion directions during the travel. The body moves once and followed by the leg to complete one cycle. Each leg stride has the same direction and amplitude. With the inverted model, the continuity of motion is significantly improved. As shown in Figure 10c1, the measure of motion continuity is represented by Eq. (7). The smaller the value, the more reliable the motion performance. Figure 10c2 shows the SM during movement. The initial SM = 50 is set. It can be seen from the curve that the motion continuity and stability is ensured at the same time. The effectiveness of the inverted model is reflected.

5.2 Case 2: Gait Planning of Hexapod Robot Based on Inverted Modelling

Like free gait planning of quadruped robot, the algorithm shown in Figure 9 can also be applied to hexapod robots. Each cycle of free gait consists of one body-movement phase and one leg-swing phase, though the leg will be chosen from all six legs (Figure 11a). Take Octopus Robot designed by SJTU as an example, planning its gait on complex terrain (Figure 11b). The leg mechanism of Octopus Robot is a three-link parallel mechanism. One branch consists of one universal joint and one prismatic joint (1-UP), and the other two are connected in series by one universal joint, one prismatic joint, and one sphere joint (2-UPS). The workspace of single leg is depicted in Ref. [37]. Let the robot walk on a rugged road as shown in Figure 12a. The obstacles and gaps are also randomly arranged on the ground. The blue track is a record of body movement trajectory. As can be seen from Figure 12b, Octopus robot can complete walking on complex terrain.

Figure 11
figure 11

Octopus robot walking on rough terrain with free gait: a Octopus robot free gait simulation (top view), b UG motion simulation capturing four screenshots 1‒3, c1c3 motion simulation with motion stability index using Inverted Modelling corresponding to the three moments of screenshot 1‒3 respectively

Figure 12
figure 12

Motion displacement along x and y direction of Octopus robot

The index of motion stability using Inverted Modelling is used here in the simulation of Octopus robot as shown in Figure 11c1‒c3. In each moment, the ground moves to an ideal position relative to the body, where the robot has the greatest stability margin. Figure 12 and Figure 13 represent displacements and angular displacements along or around each direction while walking. It is reflected using Inverted Modelling that the footholds are in the light areas as possible in their workspaces.

Figure 13
figure 13

Angular displacement and motion displacement along z direction of Octopus robot

6 Conclusions

This paper proposes the Inverted Modelling, a new way to support motion planning of legged robot, which provides a new frame for the motion performance of legged robots. Based on the modelling way described in this paper, workspaces, poses, terrain and other parameters of legged robots can be expressed. The description of motion performance is no longer a local solution of a certain robot that is limited by certain mechanisms and terrain. Instead, all these parameters can be denoted in the frame for a global performance representation. A variety of kinematics/kinetics performance measurements are discussed and used for motion capability evaluation, which is applicable for the Inverted Modelling. Therefore, this modelling way is more versatile. In future work, it can also be used for other types of legged robots such as biped, multileg, or wheel-legged robots.

Availability of Data and Materials

The datasets supporting the conclusions of this article are included within the article.


  1. P Fankhauser, M Hutter. Anymal: A unique quadruped robot conquering harsh environments. Research Features, 2018, 126: 54-57.

    Google Scholar 

  2. J Hooks, M S Ahn, J Yu, et al. ALPHRED: A multi-modal operations quadruped robot for package delivery applications. IEEE Robotics and Automation Letters, 2020, 5(4): 5409-5416.

    Article  Google Scholar 

  3. D Kim, D Carballo, J D Carlo, et al. Vision aided dynamic exploration of unstructured terrain with a small-scale quadruped robot. 2020 IEEE International Conference on Robotics and Automation (ICRA), Paris, France, September 15, 2020: 2464-2470.

  4. R B McGhee, A A Frank. On the stability properties of quadruped creeping gaits. Mathematical Biosciences, 1968, 3: 331-351.

    Article  MATH  Google Scholar 

  5. H Park, B Kwak, J Bae. Inverse kinematics analysis and COG trajectory planning algorithms for stable walking of a quadruped robot with redundant DOFs. Journal of Bionic Engineering, 2018, 15(4): 610-622.

    Article  Google Scholar 

  6. G Bledt, M J Powell, B Katz, et al. MIT Cheetah 3: Design and control of a robust, dynamic quadruped robot. 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, October 1-5, 2018: 2245-2252.

  7. Y Zhao, X Chai, F Gao, et al. Obstacle avoidance and motion planning scheme for a hexapod robot Octopus-III. Robotics and Autonomous Systems, 2018, 103: 199-212.

    Article  Google Scholar 

  8. L H Mao, Y Tian, F Gao, et al. Novel method of gait switching in six-legged robot walking on continuous-nondifferentiable terrain by utilizing stability and interference criteria. Science China Technological Sciences, 2020, 63(12): 2527-2540.

    Article  Google Scholar 

  9. G Figliolini, M Ceccarelli. Easy programming of an electropneumatic walking robot. IFAC Proceedings Volumes, 1997, 30(20): 747-754.

    Article  Google Scholar 

  10. G Figliolini, M Ceccarelli. Walking programming for an electropneumatic biped robot. Mechatronics, 1999, 9(8): 941-964.

    Article  Google Scholar 

  11. M Wang, M Wonsick, X Long, et al. In-situ terrain classification and estimation for NASA’s humanoid robot valkyrie. 2020 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), Boston, MA, USA, July 6-9, 2020: 765-770.

  12. Y de Viragh, M Bjelonic, C D Bellicoso, et al. Trajectory optimization for wheeled-legged quadrupedal robots using linearized zmp constraints. IEEE Robotics and Automation Letters, 2019, 4(2): 1633-1640.

    Article  Google Scholar 

  13. T Yamamoto, T Sugihara. Foot-guided control of a biped robot through ZMP manipulation. Advanced Robotics, 2020, 34(21-22): 1472-1489.

    Article  Google Scholar 

  14. T Ando, T Watari, R Kikuuwe. Reference ZMP generation for teleoperated bipedal robots walking on non-flat terrains. 2021 IEEE/SICE International Symposium on System Integration (SII), Iwaki, Fukushima, Japan, January 11-14, 2021: 794-800.

  15. P Biswal, P K Mohanty. Development of quadruped walking robots: A review. Ain Shams Engineering Journal, 2021, 12(2): 2017-2031.

    Article  Google Scholar 

  16. J Dai, J J Rees. Mobility in metamorphic mechanisms of foldable/erectable kinds. Proceedings of 25th ASME Biennial Mechanisms and Robotics Conference, 1998: 375-382.

  17. K Xu, X Ding. Gait analysis of a radial symmetrical hexapod robot based on parallel mechanisms. Chinese Journal of Mechanical Engineering, 2014, 27(5): 867-879.

    Article  Google Scholar 

  18. K Xu, P J Zi, X L Ding, Gait analysis of quadruped robot using the equivalent mechanism concept based on metamorphosis. Chinese Journal of Mechanical Engineering, 2019, 32: 8.

    Article  Google Scholar 

  19. C Liang, M Ceccarelli. Design and simulation of a waist–trunk system for a humanoid robot. Mechanism and Machine Theory, 2012, 53: 50-65.

    Article  Google Scholar 

  20. G Zeglin. Uniroo--a one legged dynamic hopping robot. Department of Mechanical Engineering, Massachusetts Institute of Technology, 1991.

  21. P Supinee. Atlas robot improvement. Symposium of University Research and Creative Expression, 2021.

  22. S Dafarra, S Bertrand, R J Griffin, et al. Non-linear trajectory optimization for large step-ups: Application to the humanoid robot atlas. 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Las Vegas, NV, USA, February 10, 2021: 3884-3891.

  23. H Chen, P M Wensing, W Zhang. Optimal control of a differentially flat two-dimensional spring-loaded inverted pendulum model. IEEE Robotics and Automation Letters, 2019, 5(2): 307-314.

    Article  Google Scholar 

  24. K Yuan, Z Li. An improved formulation for model predictive control of legged robots for gait planning and feedback control. 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, October 1-5, 2018: 1-9.

  25. M H Raibert. Legged robots that balance. The MIT Press, Cambridge, MA, 1985, 250.

    Google Scholar 

  26. M H Raibert. Trotting, pacing and bounding by a quadruped robot. Journal of Biomechanics, 1990, 23: 79-98.

    Article  Google Scholar 

  27. H W Park, P M Wensing, S Kim. Jumping over obstacles with MIT Cheetah 2. Robotics and Autonomous Systems, 2021, 136: 103703.

    Article  Google Scholar 

  28. D Wooden, M Malchano, K Blankespoor, et al. Autonomous navigation for BigDog. 2010 IEEE International Conference on Robotics and Automation, Anchorage, AK, USA, May 3-7, 2010: 4736-4741.

  29. S Ching-Long, C A Klein. An adaptive gait for legged walking machines over rough terrain. IEEE Transactions on Systems, Man, and Cybernetics, 1993, 23(4): 1150-1155.

    Article  Google Scholar 

  30. T Kamioka, H Kaneko, T Takenaka, et al. Simultaneous optimization of ZMP and footsteps based on the analytical solution of divergent component of motion. 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, Australia, May 21-25, 2018: 1763-1770.

  31. R B McGhee, G I Iswandhi. Adaptive locomotion of a multilegged robot over rough terrain. IEEE Transactions on Systems, Man, and Cybernetics, 1979, 9(4): 176-182.

    Article  Google Scholar 

  32. P Fankhauser, M Bjelonic, C D Bellicoso, et al. Robust rough-terrain locomotion with a quadrupedal robot. 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, Australia, May 21-25, 2018: 1-8.

  33. J F Gardner. Efficient computation of force distributions for walking machines on rough terrain. Robotica, 1992, 10(5): 427-433.

    Article  Google Scholar 

  34. W Guo, Z Tong, F Gao. A NURBS oriented model for motion design of robot motion planning. Proceedings of 14th IFToMM World Congress (IFToMM World Congress 2015), Taipei, Taiwan, China, 2015.

  35. J Huang, W Z Guo, F Gao. Time-variant NURBS oriented motion design for robot path planning. IEEE International Conference on Robotics and Automation (ICRA 2014), Hong Kong, China, 2014.

  36. R F Lin, W Z Guo, M Li, et al. Novel design of a legged mobile lander for extraterrestrial planet exploration. International Journal of Advanced Robotic Systems, 2017, 14(6): 17298814-17746120.

    Article  Google Scholar 

  37. P Yang, F Gao. Leg kinematic analysis and prototype experiments of walking-operating multifunctional hexapod robot. Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science, 2013, 228(12): 2217-2232.

    Google Scholar 

Download references


Not applicable.


Supported by National Natural Science Foundation of China (Grant No. 51735009).

Author information

Authors and Affiliations



WZ was in charge of the whole trial; CY drafted the manuscript. Both authors read and approved the final manuscript.

Authors’ Information

Chenyao Zhao, born in 1997, is currently a master candidate at State Key Laboratory of Mechanical Systems and Vibration, School of Mechanical Engineering, Shanghai Jiao Tong University, China. He received his bachelor degree from Shandong University, China, in 2018. His research interest includes robotics and motion planning and control of mobile robot.

Weizhong Guo, born in 1970, is currently a professor and a PhD candidate supervisor at State Key Laboratory of Mechanical Systems and Vibration, School of Mechanical Engineering, Shanghai Jiao Tong University, China. His research interests include parallel kinematic mechanisms and applications, mechanism analysis and synthesis, and innovation design of robotic systems.

Corresponding author

Correspondence to Weizhong Guo.

Ethics declarations

Consent for Publication

Not applicable.

Competing Interests

The authors declare no competing financial interests.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit

Reprints and Permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Zhao, C., Guo, W. Inverted Modelling: An Effective Way to Support Motion Planning of Legged Mobile Robots. Chin. J. Mech. Eng. 36, 19 (2023).

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI:


  • Gait planning
  • Inverted Modelling
  • Legged mobile robot
  • Motion planning
  • Workspace