Keywords

1 Introduction

The research of quadruped robot began in 1960s.With the development of computer technology, it has developed rapidly since 1980s. After entering the 21st century, the application research of quadruped robot continues to extend from structured environment to unstructured environment, from known environment to unknown environment. At present, the research direction of quadruped robot has been transferred to the gait planning which has certain autonomous ability and can adapt to complex terrain. Based on the kinematics research of the quadruped mechanism, the gait of the walking mechanism is planned, and the corresponding leg swing sequence of the forward motion (four steps) gait is obtained. Finally, the gait planning is simulated and verified by ADAMS software, and good results are achieved.

2 Kinematic Analysis

2.1 Simplified Model

In the initial kinematic analysis modeling of simplified model, it is not necessary to excessively pursue whether the details of the component geometry are consistent with the reality, because it often takes a lot of modeling time and increases the difficulty of kinematic analysis. The key at this time is to pass the kinematic analysis smoothly and obtain the preliminary results. In principle, as long as the mass, center of mass and moment of inertia of the simplified model are the same as those of the actual components. In this way, the simplified model is equivalent to the physical prototype. The simplified model is shown in Fig. 1.

Fig. 1.
figure 1

Simplized quadruped-leg robot model

2.2 Establish Coordinate System

In order to clearly show the relative position relationship between the foot and the body of the walking mechanism and the three-dimensional space, three sets of coordinate systems are established, namely the leg coordinate system, the body coordinate system and the motion direction coordinate system.

Leg Coordinate System.

\({\text{O}}_{{\text{Li}}} {\text{X}}_{{\text{Li}}} {\text{Y}}_{{\text{Li}}} {\text{Z}}_{{\text{Li}}}\) coordinate system is shown in Fig. 2, Coordinate origin \({\text{ O}}_{\text{Li }}\) is the axis of rotation of the hip joint and the bar \({\text{L}}_{{\text{i}}1}\) intersection; axis \({\text{Z}}_{{\text{Li}}}\) is downward along the rotation axis of the hip joint; axis \({\text{X}}_{\text{Li }}\) is in the leg plane and perpendicular to the axis \({\text{ Z}}_{{\text{Li}}}\); axis \({\text{Y}}_{{\text{Li}}}\) is determined by the right-hand rule. Select \({\text{Z}}_{{\text{Li}}}\) down, the selection of downward is mainly to intuitively display the change of the height of the center of gravity. The walking mechanism has four legs. Therefore, there are four leg coordinate systems as shown in Fig. 3, i = 1,2,3,4.

Fig. 2.
figure 2

Body diagram and the coordinate of walking system

Fig. 3.
figure 3

Body coordinate and leg coordinate system of walking mechanism

Volume Coordinate System.

The body coordinate system is a coordinate system fixed on the body and moving with the movement of the walking mechanism. As shown in Fig. 3, a three-dimensional coordinate system \({{\rm O}}_{{\rm b}} {{\rm X}}_{{\rm b}} {{\rm Y}}_{{\rm b}} {{\rm Z}}_{{\rm b}}\) is established. The coordinate origin \({\text{O}}_{\text{b}}\) is located at the geometric center of the traveling mechanism; axis \({\text{X}}_{\text{b}}\) starts from the coordinate origin, Along the horizontal direction of the body width of the traveling mechanism; Axis \({\text{Z}}_{\text{b}}\) vertical down; axis \({\text{Y}}_{\text{b}}\) is determined by the right-hand rule.

Motion Direction Coordinate System.

Motion direction coordinate system when human beings walk, they always consider the difference between themselves and the target and how to move to reach the target. According to the thinking method of human walking, the motion direction coordinate system is established.\({{\rm O}}_{{\rm n}} {{\rm X}}_{{\rm n}} {{\rm Y}}_{{\rm n}} {{\rm Z}}_{{\rm n}}\). The establishment of the coordinate system of the motion direction system is as follows: The origin coincides with the origin of the volume coordinate system, axis \({\text{Z}}_{\text{n}}\) coincides with the axis \({\text{Z}}_{\text{b}}\), axis \({\text{X}}_{\text{n}}\) points in the direction of this movement,\({\text{Y}}_{\text{n}}\) is determined by the right-hand rule. This coordinate places the planner on the walking mechanism itself and thinks that the movement of the walking mechanism is equivalent to the movement of his own legs, which brings a lot of convenience to the gait planner. It not only reduces many transformations in walking and greatly reduces the amount of calculation, but also for the operator, the walking mechanism is equivalent to himself. How much is the difference between himself and the target, How to move to reach the target is clear in the eyes of the operator. The motion direction coordinate is set to solve the motion relationship between the quadruped walking mechanism and the environment. It has a certain relationship with the earth directly. It can also be said to be the geodetic coordinate system of a certain motion. It only works when the walking mechanism moves along a certain motion direction.

2.3 Kinematic Calculation of Leg

As shown in Fig. 2. The robot has three driving joints, that is, three degrees of freedom. The three joint angles are \({\uptheta }_{\text{i}} {/\upalpha }_{\text{i}} {{/\upbeta }}_{\text{i}}\). The length of each rod is shown in Fig. 2. The position of the foot end in the leg coordinate system is \(F(x_{Fi} {,}y_{Fi} {,}z_{Fi} ){ }\), axis \(X_{Li}\) is always in the leg plane, \(y_{Fi} = 0\).

Forward Kinematics Calculation of Leg.

The forward kinematics of the leg calculates the forward kinematics of the leg, which refers to determining the position of the foot in the corresponding coordinate system according to the motion of the driving joint of the leg. The structural parameters and three joint angles of quadruped walking mechanism are shown in Fig. 3, foot end position:

$$ x_{Fi} = l_{i1} + l_{i2} cos\alpha_i + l_{i3} cos(\beta_i - \alpha_i ) $$
(1)
$$ {\text{y}}_{{\text{Fi}}} = 0 $$
(2)
$$ {\text{z}}_{{\rm{Fi}}} = {\text{l}}_{{\rm{i}}3} {{\sin(\upbeta }}_{\text{i}} - {\upalpha }_{\rm{i}} {)} - {\text{l}}_{{\rm{i}}2} {\text{sin}}\,{\upalpha }_{\rm{i}} $$
(3)
$$ {\uptheta }_{\text{i}} = {\uptheta }_{\text{i}} $$
(4)

Inverse Kinematics Calculation of Leg.

The inverse kinematics of the leg calculates the inverse kinematics of the leg, which refers to calculating the motion parameters of each driving joint of the leg according to the position of the foot in the coordinate system.

From Eq. (1):

$$ {\text{x}}_{{\rm{Fi}}} = {\text{l}}_{{\rm{i}}1} + {\text{x}}_{{\rm{fi}}} $$
(5)
$$ {\text{x}}_{{\rm{fi}}} = {\text{l}}_{{\rm{i}}2} {{\cos}}\,{\upalpha }_{\rm{i}} + {\text{l}}_{{\rm{i}}3} {{\cos(\upbeta }}_{\rm{i}} - {\upalpha }_{\rm{i}} {)} $$
(6)
$$ {\text{X}}_{{\text{fi}}}^2 + {\text{Z}}_{{\text{Fi}}}^2 = {\text{I}}_{{\text{i}}2}^2 + {\text{I}}_{{\text{i}}3}^2 + 2{\text{I}}_{{\text{i}}2} {\text{I}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} $$
(7)
$$ {\text{cos}}\,{\upbeta }_{\text{i}} = \frac{{({\text{x}}_{{\text{Fi}}} - {\text{I}}_{{\text{i}}1} )^2 + {\text{Z}}_{{\text{Fi}}}^2 - {\text{I}}_{{\text{i}}2}^2 - {\text{I}}_{{\text{i}}3}^2 }}{{2{\text{I}}_{{\text{i}}2} {\text{I}}_{{\text{i}}3} }} $$
(8)
$$ {\text{k}}_{\text{i}} = {\text{cos}}\,{\upbeta }_{\text{i}} $$
$$ \beta_i = {\text{arccos}}\,k_i $$
(9)

from Eq. (3):

$$ {\text{Z}}_{{\text{Fi}}} = - {\text{sin}}\,{\upalpha }_{\text{i}} ({\text{l}}_{{\text{i}}2} + {\text{l}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} ) + {\text{cos}}\,{\upalpha }_{\text{i}} ({\text{l}}_{{\text{i}}3} {\text{sin}}\,{\upbeta }_{\text{i}} ) $$
(10)
$$ \begin{array}{*{20}c} {\frac{{{\text{Z}}_{{\rm{Fi}}} }}{{\sqrt {({\text{I}}_{{\rm{i}}2} + {\text{l}}_{{\rm{i}}3} {\text{cos}}\,{\upbeta }_{\rm{i}} )^2 + ({\text{l}}_{{\rm{i}}3} {\text{sin}}\,{\upbeta }_{\rm{i}} )^2 } }} = - \frac{{{\text{I}}_{{\rm{i}}2} + {\text{l}}_{{\rm{i}}3} {{\cos\upbeta }}_{\rm{i}} }}{{\sqrt {({\text{l}}_{{\rm{i}}2} + {\text{l}}_{{\rm{i}}3} {\text{cos}}\,{\upbeta }_{\rm{i}} )^2 + ({\text{l}}_{{\rm{i}}3} {\text{sin}}\,{\upbeta }_{\rm{i}} )^2 } }}sin\,{\upalpha }_{\rm{i}} } \\ { + \;\frac{{{\text{l}}_{{\rm{i}}3} {\text{sin}}\,{\upbeta }_{\rm{i}} }}{{\sqrt {({\text{I}}_{{\rm{i}}2} + {\text{l}}_{{\rm{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} )^2 + ({\text{l}}_{{\rm{i}}3} {\text{sin}}\,{\upbeta }_{\rm{i}} )^2 } }}cos\,{\upalpha }_{\rm{i}} } \\ \end{array} $$
(11)
$$ \begin{array}{*{20}c} {{\text{sin}}\,{\upgamma }_{\text{i}} = \frac{{{\text{I}}_{{\text{i}}3} {\text{sin}}\,{\upbeta }_{\text{i}} }}{{\sqrt {\left( {{\text{I}}_{12} + {\text{I}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} } \right)^2 + ({\text{I}}_{{\text{i}}3} {\text{sin}}\,{\upbeta }_{\text{i}} )^2 } }}} \\ {{\text{cos}}\,{\upgamma }_{\text{i}} = \frac{{{\text{I}}_{{\text{i}}2} + {\text{I}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} }}{{\sqrt {({\text{I}}_{{\text{i}}2} + {\text{I}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} )^2 + ({\text{I}}_{{\text{i}}3} {\text{sin}}\,{\upbeta }_{\text{i}} )^2 } }}} \\ \end{array} $$
$$ \frac{{{\text{Z}}_{{\text{Fi}}} }}{{\sqrt {({\text{I}}_{12} + {\text{I}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} )^2 + ({\text{I}}_{{\text{i}}3} {\text{sin}}\,{\upbeta }_{\text{i}} )^2 } }} = - {\text{sin}}\,{\upalpha }_{\text{i}} {\text{cos}}\,{\upgamma }_{\text{i}} + {\text{cos}}\,{\upalpha }_{\text{i}} {\text{sin}}\,{\upgamma }_{\text{i}} $$
$$ {{\sin(\upgamma }}_{\rm{i}} - {\upalpha }_{\rm{i}} {)} = \frac{{{\text{Z}}_{{\rm{FI}}} }}{{\sqrt {({\text{I}}_{12} + {\text{I}}_{{\rm{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} )^2 + ({\text{l}}_{{\rm{i}}3} {\text{sin}}\,{\upbeta }_{\rm{i}} )^2 } }} $$
(12)
$$ {\upgamma }_{\text{i}} - {\upalpha }_{\text{i}} = {\text{arcsin}}\left( {\frac{{{\text{Z}}_{{\text{Fi}}} }}{{\sqrt {({\text{I}}_{12} + {\text{I}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} )^2 + ({\text{I}}_{{\text{i}}3} {\text{sin}}\,{\upbeta }_{\text{i}} )^2 } }}} \right) $$
(13)
$$ {\upalpha }_{\text{i}} = {\upgamma }_{\text{i}} - {\text{arcsin}}\left( {\frac{{{\text{Z}}_{{\text{FI}}} }}{{\sqrt {({\text{I}}_{12} + {\text{I}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} )^2 + ({\text{I}}_{{\text{i}}3} {\text{sin}}\,{\upbeta }_{\text{i}} )^2 } }}} \right) $$
(14)
$$ {\upgamma }_{\text{i}} = {\text{arcsin}}\left( {\frac{{{\text{I}}_{{\text{i}}3} {\text{sin}}\,{\upbeta }_{\text{i}} }}{{\sqrt {({\text{I}}_{{\text{I}}2} + {\text{I}}_{{\text{i}}3} {\text{cos}}\,{\upbeta }_{\text{i}} )^2 + ({\text{I}}_{\text{B}} {\text{sin}}\,{\upbeta }_{\text{i}} )^2 } }}} \right) $$

3 Analysis of Translational Gait of Walking Mechanism

Gait refers to the movement process of each leg of the walking mechanism according to a certain order and trajectory. It is precisely because of this movement process that the walking movement of the walking mechanism is realized. The walking mechanism discussed in this paper is in a static and stable walking state, that is, at any time, the walking mechanism has at least three legs supported on the ground. This state belongs to the slow crawling of the robot.

3.1 Static Stability Principle

The static stability of multi legged robot refers to the stability that the robot does not flip and fall when walking and maintains the balance of the body. If the vertical projection of the center of gravity of the robot is always surrounded by polygons formed by alternating footholds, the robot is statically stable. If the center of gravity of the robot exceeds the stability range, the robot will lose stability. As shown in Fig. 5, legs 1, 3 and 4 are set as support legs, and O is the center of gravity of the robot. Triangular area ∆ABC represents the stable area surrounded by three footholds of the robot. When the center of gravity o of the robot is located in this area, the robot is statically stable. If the center of gravity of the robot will exceed the stable area, it will lead to the instability of the robot. During static and stable walking, the vertical center of gravity of each part of the robot is required to always fall in the stable area, which makes the walking speed of the robot very slow, so it is called crawling or walking.

Fig. 4.
figure 4

Principle of the static stability

Fig. 5.
figure 5

All the CFD of walking mechanism

3.2 Critical Direction Angle

The critical direction angle \(\rm{\omega }_{\text{c}}\) refers to the angle between the critical forward direction (CFD) of the walking mechanism and the axis \(X_b\) of the body coordinate system. The critical forward direction indicates the straight line direction formed by the vertical projection of the quadruped walking mechanism doing translational crawling along the diagonal at the current and next foothold, which is through the vertical projection of the center of gravity of the walking mechanism in a gait cycle. Therefore, as shown in Fig. 5, four critical directions can be obtained. These direction angles and axis \(X_b\) and axis \(y_b\) of the body coordinate system divide the direction angle ω into eight regions to determine and select the leg swing sequence: \(0 \le {\upomega } \le {\upomega }_{{\text{c}}1} {,}\,{\upomega }_{{\text{c}}1} \le {\upomega } \le {\pi /}2{,}\,{\pi /}2 \le {\upomega } \le {\upomega }_{{\text{c}}2} {,}\,{\upomega }_{{\text{c}}2} \le {\upomega } \le {\uppi }\), \({\uppi } \le {\upomega } \le {\upomega }_{{\text{c}}3} {,}\;{\upomega }_{{\text{c}}3} \le {\upomega } \le 3{\pi /}2{,}\;3{\pi /}2 \le {\upomega } \le {\upomega }_{{\text{c}}4} {,}\;{\upomega }_{{\text{c}}4} \le {\upomega } \le 2{\uppi }\) .

3.3 The Swing Sequence of the Legs in the Translational Gait

Taking one of the eight areas as an example, this paper expounds the selection process of leg swing sequence. According to the walking direction, the principle of total leg swing is to meet the principle of static stability of the walking mechanism. In addition, since the walking machine is symmetrically distributed and has a simple structure, when setting the swing sequence of legs, the stability of the walking mechanism is judged according to the position of the center of gravity of the walking mechanism. It is assumed that the traveling mechanism is at an angle with the X direction ω As shown in Fig. 6, the initial attitude of the walking mechanism is represented by a dotted line, the solid line represents the attitude of the walking mechanism after movement, and the dotted line represents the stable triangle formed by the support points of each foot of the walking mechanism. A gait cycle of the walking mechanism is divided into four stages. In each stage, one leg is lifted and dropped, and then the body moves. It is represented by four diagrams in Fig. 6 (a), (b), (c) and (d). If the step size of a gait cycle is s, the moving distance of the body in each stage is s/4.

Fig. 6.
figure 6

Swinging leg selection of walking mechanism walk to the front

As shown in Fig. 6 (a), the traveling mechanism moves s/4 along the direction angle ω, in which it moves along the X direction and along the Y direction. It can be seen that after the movement, the center of gravity of the body is in \(\vartriangle {\text{P}}_2 {\text{P}}_3 {\text{P}}_4\) and \(\vartriangle {\text{P}}_1 {\text{P}}_2 {\text{P}}_4\). It can be seen that both leg 1 and leg 3 can be lifted. However, considering that the stability margin of leg 3 is greater than that of leg 1, leg 3 should be selected as the first swing leg.

As shown in Fig. 6 (b), after the leg 3 swings, the traveling mechanism moves s/4 again along the direction angle. If it moves S × cosω/4 and S × sinω/4 respectively along the X and Y directions, it moves cumulatively along the X direction S × cosω/2 and the Y direction S × sinω/2. According to the stability principle, only leg 4 can be selected as the second swing leg this time.

Similarly, the swing sequence of each leg of the walking mechanism in a gait cycle can be obtained when the walking mechanism moves at the direction angle in each area, as shown in Table 1.

Table 1. The legs’ swing sequence in different walking direction

3.4 The Swinging Sequence of Gait Legs with Fixed-Point Rotation

In order to make the walking mechanism have greater mobility, it is necessary to further design the fixed-point rotation gait of the walking mechanism. The rotation angle conforms to the right-hand rule. When the traveling mechanism turns left \({\upgamma } > 0\), when it turns right \({\upgamma } \le 0\).

The swing sequence of the walking mechanism legs rotating around the geometric center of the walking mechanism is analyzed as follows:

As shown in Fig. 7, the selection of leg swing sequence is illustrated by taking the left turn of the body as an example. Because it rotates around the fixed point of the geometric center of the walking mechanism, the center of gravity of the body remains unchanged and is always at the geometric center of the body during the rotation. Assuming that the angle \({\upgamma }\) of a gait cycle is, a gait cycle of the walking mechanism is divided into four stages as shown in Fig. 7 (a), (b), (c), (d) and (e). The dotted line in the figure represents the stable triangle formed by the support points of each foot of the walking mechanism. The angle of each body rotation is. The solid line in figure (a) represents the initial attitude of the walking mechanism, the dotted line represents the attitude of the walking mechanism after a gait cycle, and the dotted line in Fig. 7 (b), (c), (d) and (e) represents the current attitude of the walking mechanism, The solid line represents the posture of the walking mechanism after a phase of gait rotation.

Fig. 7.
figure 7

Selection of swing leg for fixed-point rotation of traveling mechanism

The initial and final positions of the traveling mechanism are shown in Fig. 7 (a). Firstly, the initial posture of the walking mechanism is shown by the solid line in Fig. 7 (a). When the walking mechanism rotates to the left \({\gamma /}4\), it is feasible to lift any leg according to the stability principle. We select leg 4 as the first swing leg, as shown in Fig. 7 (b). After leg 4 swings, the posture of the walking mechanism is shown as the solid line in Fig. 7 (b). The traveling mechanism rotates to the left. According to the stability principle, only leg 2 can be selected as the second swing leg this time, as shown in Fig. 7 (c).

After leg 2 swings, the posture of the walking mechanism is shown by the solid line in Fig. 7 (c). The traveling mechanism rotates to the left \({\gamma /}4\) again. According to the stability principle, only leg 1 can be selected as the third swing leg this time, as shown in Fig. 7 (d).

After leg 1 swings, the posture of the walking mechanism is shown as the solid line in Fig. 7 (d). The traveling mechanism rotates to the left \({\gamma /}4\) again. According to the stability principle, only leg 3 can be selected as the fourth swing leg, as shown in Fig. 7 (e).

The final pose is shown by the solid line in Fig. 7 (e).

Similarly, the swing sequence of legs under fixed-point rotation gait is summarized in Table 2.

Table 2. The swinging sequence of gait legs rotating around a fixed point of the geometric center of the walking mechanism

4 Simulation (Take the Four Step Walking in Front as an Example)

In order to verify the rationality of the mechanism design and gait planning of the walking mechanism, the simulation analysis is carried out by using UG and ADAMS software. After the simplified model of the walking mechanism is created in UG software, the model is imported into ADAMS software by using ADAMS/exchange module, and other environments (such as ground, etc.) are built in ADAMS software to form the large framework of the virtual prototype, and then the constraints and forces are applied to these components to establish the virtual prototype of the walking mechanism (Table 3).

Table 3. Motion planning of walking mechanism walking straight ahead (four steps)

4.1 Determine Simulation Parameters

According to the kinematics research of the walking mechanism, the size of the walking mechanism leg mechanism is substituted into the inverse kinematics calculation formula of the leg, and the rotation angle of each driving joint is calculated, as shown in Table 4.

Table 4. Rotation angle of each driving joint when walking straight ahead (four steps)

4.2 Simulation Result

Input the parameters in Table 4 into the functions of each corresponding driver. The simulation process of the walking mechanism walking straight ahead is shown in Fig. 8.

Fig. 8.
figure 8

Screenshot of simulation process of walking mechanism walking straight ahead (four steps)

4.3 Analysis of Simulation Results

After simulation, the displacement of each point on the body of the walking mechanism along the axis \({\text{Z}}_{\text{n}}\) direction is small, that is, the movement of the platform is relatively smooth and stable on the whole. However, there are still some problems, such as slight deviation of the motion trajectory and instability of individual steps, which are summarized as follows (Fig. 9):

  1. 1)

    When walking straight ahead (four steps), the mobile platform moves forward once after four steps, resulting in uncoordinated action when the platform moves forward. This is because the active drive is much more than the spatial degrees of freedom of the walking mechanism, resulting in redundant constraints. For this problem, you can try to take a two-step approach.

  2. 2)

    When walking, the platform tilts slightly in individual steps. The reason is that the center of gravity of the whole mobile platform is too close to the edge of its stable triangle, resulting in the reduction of stability margin. To solve this problem, by modifying the motion parameters of the corresponding joints, the distance between the center of gravity of the walking mechanism and the edge of the stable area surrounded by the three supporting feet is increased (as shown in Fig. 4, the value of the shortest distance d1 among the three distances d1d2d3 is increased), the stability margin of the walking mechanism is increased, so as to greatly improve the walking stability of the platform.

  3. 3)

    Similar methods can be used to study the gait of walking mechanism in front of walking (two-step movement), right front 45° walking (one-step movement) and right front 45° walking (two-step movement).

Fig. 9.
figure 9

Displacement curve of each point on the machine body along the axie \({\text{Z}}_{\text{n}}\) direction when the walking mechanism moves straight ahead (four steps)