1. Introduction
Multi-legged walking machines, compared to those with wheeled or tracked locomotion, are widely recognized as a much more effective and efficient form of transportation vehicle, especially on complex and unstructured terrains. Hexapod robots, one such type of legged walking machines, generally have superior performance than those with fewer legs in terms of less complexity of the control method, more statically stable walking, and faster walking speed [
1,
2]. Therefore, in recent years, multi-legged walking robots have been extensively researched and are noted for their good environmental adaptability and movement flexibility. The potential application terrain for use of these robots is mainly unstructured surface environments [
3].
In order to have sufficient adaptive capacity for different conditions, the design of the robotic leg and foot is becoming particularly important. According to current research on multi-legged walking robots, foot designs, on the basis of the different linkages between the leg and foot tip, can be divided into two main groups; non-articulated feet and passive ankle feet. The non-articulated foot group can be farther divided into flat foot, rounded flat foot, (semi)-round foot, and so on. The robots Dante II [
4], AMBLER [
5], and ROWER [
6] have been built with flat foot designs, while the G. E walking Truck [
7] and Airbug [
8] robots adopted rounded flat foot designs. Other robots such as MASCHA [
9], Silex [
10], LauronIII [
11], TUM [
12], TARRY II [
13], and so on use (semi)-round rigid feet. However, the robots with a passive ankle foot design have a large difference in the number of degrees of freedom (DOF). PV II [
14], TITAN [
15], and OSU [
16] adopted a passive ankle-joint with a single DOF, while the COMET II [
17] and SILO4 [
18] adopted a foot structure with an ankle-joint, which has two revolute joints. The flat feet of HAMLET [
19] are connected with the body by a spherical hinge with three DOF. Overall, the foot with a passive ankle-joint is complex in its design and manufacturing, and the cost is also correspondingly higher. In addition, the trajectory of robots with movable ankle-joints and flat feet is also limited by foothold. The small angle between the foot trajectory and the surface will likely cause impact with the ground, or even stumbling. The non-articulated foot with a flat or round structure also has great limitations in its adaptability to complex terrain. By contrast, a (semi)-round rigid foot has significant advantages in applications, so it is widely used in many robot prototypes [
20,
21,
22].
When designing the size of a semi-round rigid foot, using a smaller radius can cause the foot to sink into a surface, and should be considered because the walking robot usually has to adapt to a variety of complex surface environments, such as rugged or soft ground. This problem can be effectively alleviated by increasing the radius of the foot, but on hard ground a large-radius foot will change the contact point between the foot and the ground when it is in the supporting phase, thus affecting the trajectory. Because multi-legged robots have a parallel closed chain structure in the standing state, the nonconformity of body trajectory error caused by the semi-round foot of each leg will eventually lead to sliding between the foot and the ground, and affect the stability of the robot. To address the problem above, Chen et al. proposed a trajectory correction method [
23], where the predefined trajectory of the robotic foot tip is modified according to the information from force feedback. In this way, the robot can adapt to the current terrain at any time and it can relieve the running deviation. In another paper [
24], when the running deviation rate of the robot reaches a gate value, the robot can amend it by adjusting gait or changing direction. Wei et al. [
25] proposed a method to measure the deviation degree of the body during movement by using machine vision. More specifically, they used characteristic points of machine vision to track external parameters of the camera during movement between two frames obtained by pose estimation technology. On this basis, calculation of the deviation degree was completed. Kwon et al. [
26] proposed an adaptive trajectory generation method for quadruped robots with semicircular feet to control body speed and heading. The adaptive gait patterns are changed by the sequential modulation of the locomotion period and the stride per step, which are determined by the desired body speed and heading commands. The researchers above have achieved the correction from the closed-loop control of the trajectory, but the problem of deviation between the actual position and the desired trajectory of the robot's feet have not been solved. Guardabrazo et al. [
27] had proposed a method to solve it. However the kinematic model they established was mainly used to analyze the motion of the robot with mechanical legs imitating insects in a two-dimensional working plane. Although the problem of a semi-round rigid foot in a three-dimensional space has been investigated, a complete kinematic relationship is missing.
Due to the special structure of the semi-round foot, the deviation of each leg is different and it will further lead to interference between the legs, as well as more energy consumption. Therefore, it is necessary to propose a correction algorithm for the kinematics. In order to find a better way to solve the problem of deviation caused by a semi-round foot and to improve the accuracy of the inverse kinematic solution, the trajectory deviation of the body and leg caused by a semi-round foot is studied. According to the kinematic analysis, a correction methodology for forward/inverse kinematic solutions in three-dimensional space between the relative position of the semi-round foot and joint trajectory is proposed. A nonlinear mapping relationship between foot position and joint angle is approached by constructing the optimal linear regression function, and then the inverse kinematic relationship of a robot with semi-round foot is realized based on LS-SVM. Using the existing hexapod walking robot platform with multi-sensors, a series of related experiments are carried out, and the validity of the correction methodology for improving foot stress, body trajectory, foot slip, and energy consumption is verified.
The remainder of this paper is organized as follows:
Section 2 provides a brief introduction to the robot system.
Section 3 presents the modeling and the methods in detail.
Section 4 describes the experiments and discusses the results.
Section 5 summarizes and concludes the paper.
2. Description of the Structure and Sensor System
The structure of a robotic leg should not only imitate the structure of legged animals (such as insects and spiders), but should also consider its power system and constraints [
28]. In this paper, a type of leg structure with a mammalian configuration is adopted, since mammal legs require less joint torques to support the body [
29]. Mammalian legs usually have three joints (base-joint, hip-joint, and knee-joint). The base-joint and the hip-joint are located higher than knee-joint. Its characteristics of low energy consumption and large loading are more suitable for outdoor tasks. The mechanical model of the robot is shown in
Figure 1a. Each leg consists of three linkages which are connected by a hip joint and a knee joint. The leg mechanism is attached to the body via a base joint. Here, a semi-round foot with a certain radius is used. The leg variables are shown in
Figure 1b. The robot can achieve translation and rotation in three-dimensional space in its workspace [
30].
The sensors, especially the camera, attitude sensor, and force sensor, play an important role in the intelligent robotics field [
31,
32]. The distribution of the multi-sensor system of the robot for observing motion state is shown in
Figure 1c. BLi, HLi, and KLi (BRi, HRi, and KRi for the
ith leg) respectively represent the base-joint, hip-joint, and knee-joint on each left (right) leg, and LF, LM, and LH (RF, RM, and RH) respectively represent the front leg, middle leg, and hind leg on the left (right) side. Each joint is composed of a DC motor, a high reduction rate gear system, and has an integrated encoder, which is used for detecting the position of the joint angle. Contact sensors (CoSLi or CoSRi) installed on the semi-round foot tips (SRLi or SRRi) are used for monitoring the gait of the robot. In order to reflect the energy consumption of each leg in different gaits, current detection modules (CuSLi or CuSRi) are used. The arrows represent current flow direction. The attitude sensor (AS) is installed in the body to monitor the posture of the robot body. And then, the data processed by the wireless module transmits to a host computer to generate commands. Finally, the commands are send to the slave board Cortex-M4 to control the motion of each leg and to monitor the state of each sensor. The diagram of the control architecture is shown in
Figure 1d.
3. Trajectory Correction Methodology
The deviation caused by semi-round rigid foot not only occurs in the vertical direction, but also the horizontal direction. For multi-legged parallel mechanisms, these inaccurate displacements will cause deviation between the real posture and ideal posture of the body, causing the walking robot to not move smoothly. In addition, each supporting leg of the robot will lead to different deviations when they are actuated at the same time. This will not only lead to interference of supporting legs for its redundant DOFs, but also waste a lot of system energy. When this situation persists, slipping will occur and will influence the stability of the robot [
33]. Therefore, it is extremely necessary to put forward kinematic correction methodology according to the special structure of the semi-round rigid foot.
3.1. Kinematic Analysis
Each leg can be regarded as a manipulator with three rotating joints attached to a stationary base. It includes two parallel joints, the hip-joint
θ2 and the knee-joint
θ3, which is connected to the body through a base-joint
θ1. Therefore, the establishment of the kinematic model and the derivation of the kinematic equation can follow traditional robot technology and methods. The kinematic model of this paper is obtained by defining the reference coordinate system using the Denavit-Hartenberg method [
34]. The model of the leg structure with three joints is shown in
Figure 1b, in which the reference coordinate and the corresponding joint variables are marked. The base coordinate system
is located on the static robot body. The connection parameters of the D-H model are listed in
Table 1.
Therefore, under the base reference coordinate system
of the leg, three joint angles are already known and foot position vector
can be obtained by the forward kinematic equation, as follows:
in which,
,
,
,
,
and
are the mean joint angles of
ith and
jth, respectively.
Here, the algebraic method is used to solve the inverse kinematic problem. The plus symbol is used for the front-leg of the multi-legged robot, and the minus symbol is used for the other leg:
3.2. Kinematics Correction of a Single Leg with a Semi-Round Rigid Foot
The real trajectory of the body coincides with the theoretical trajectory when the foot is regarded as a point and there is no slipping. In theory, it can follow the ideal trajectory very well, but it is not practical for the mechanical structure. However, when the foot structure is semi-round, even though there is no slipping, the contact point between the foot and ground will be changing during the movement, which will cause deviation from the preset trajectory. Hence, in order to eliminate this deviation, the joint angle needs to be corrected. Because the robot is a closed kinematic chain, these deviations will lead to the error between the actual posture and the ideal posture of the robot body.
Figure 2 is a side view of a single leg with a semi-round rigid foot. For ease of analysis, the concept of ideal foothold is proposed. On the horizontal surface, when the axial direction of the 3rd linkage of leg is perpendicular to the surface of the ground (shown in
Figure 2 as a dashed line), the contact point of the horizontal surface and semi-round rigid foot on the ground is the ideal foothold
TI, and this point on the semi-round rigid foot is called foot reference point
TP. For the real foothold of the support leg at any posture, the only ideal foothold can be calculated by neglecting any small slippage between the foot and the ground, supposed as pure rolling. It is assumed that the origin of the base-joint coordinate is
Or, the spherical center of the semi-round foot is
Ot, and the real contact point of the semi-round rigid foot and the ground is
TG, which is shown in
Figure 2. The angle between link 3 and the perpendicular of the horizontal plane is
. The location of the ideal foothold in the base-joint coordinate system can be calculated by forward kinematics, as long as each joint angle vector is known.
According to the assumption that there is no relative slipping between the semi-round rigid foot and the ground, then:
in which,
is a circle between the foot reference point
TP and the real contact point
TG. After vector analysis of
Figure 2, the foot reference position is obtained:
and real foothold is:
As for ideal foothold, we have:
in which:
because of:
Therefore, the angle
between the 3rd linkage and the perpendicular of the horizontal plane can be obtained by Equations (8) and (9):
because:
Usually,
,
and
are coplanar, so:
Hence, in the base-joint coordinate system, the kinematics solution of the ideal foothold is obtained:
In the same way, when the position of the ideal foothold is known, each joint angle vector can be obtained by the inverse kinematics solution.
The front view of a single leg with a semi-round rigid foot is shown in
Figure 3, which shows that:
From Equation (15), we can obtain:
Because of Equation (6), we have:
Substituting Equation (17) into Equation (2), the modified joint angles and can be obtained. However, it is difficult to solve because Λx, Λy, and all have a relationship with and . Here, it is approximately solved by using uncorrected joint angles.
According to Equation (13), we have:
where,
,
,
, and
, in which
are the
i-th and
j-th joint-angles before correction. Upon substituting Equation (18) into Equations (19) and (20), the amended inverse kinematics relationship of a semi-round rigid foot is achieved. For a multi-legged robot, when it is used for the foreleg, Equation (19) has a positive sign, and when it is used for a rear leg, the equation has a negative sign.
3.3. Semi-Round Rigid Foot Trajectory Correction Algorithm Based on LS-SVM
The correction algorithm for the foot trajectory can eliminate the effect of semi-round rigid feet on the robot. However, the previous inverse kinematic algorithm is obtained by the approximation algorithm according to Equations (16)–(20), which has fast computational speed but the accuracy is not high, so the trajectory correction algorithm for a semi-round rigid foot based on the least squares support vector machine (LS-SVM) is proposed to solve this problem. The basic idea of SVM is mapping the input vector to a high dimensional feature space by using nonlinear transformation, and constructing an optimal decision function in this space [
35]. When constructing the optimal decision function, the structural risk minimization principle is used and the point multiplication in the high-dimensional feature space is replaced by using the kernel function of the original space.
Assuming a given training sample
where
represents the point multiplication, and
is the weight vector of the original weighted space.
is a nonlinear mapping of samples from the original space to the high dimensional feature space, and the linear regression function is constructed in this space.
LS-SVM [
36] is an extension of standard SVM. The optimization index adopts squared terms and the in-equation constraints of standard SVM are replaced by equation constraints. That means the quadratic programming problems transform into problems of the linear equation set solution. This method simplifies the complexity of the calculation and accelerates the solving process. The optimization problem of LS-SVM can be described as:
The constraint condition is:
where
is error variable, and
is a regular constant. A smaller
can avoid over-fitting caused by noise.
Introducing the Lagrangian function:
in which,
are Lagrange multipliers, so the constraint conditions become:
Those constraints are consistent with the optimal conditions of standard SVM except
. The linear equation can be obtained by eliminating the variables
w and
ek:
where, I is a unit matrix with
n × n,
y = [
y1,…,
yN],
e = [1,…,1],
α = [
α1,…,
αN]. According to the Merce condition, we have:
Although the selection criteria of the kernel function Ψ(
xk,xl) is consistent with the standard SVM, the radial basis function is widely used now, so the linear regression function is:
in which the term σ is the kernel bandwidth.
where
α and b satisfy Equation (26).
The forward/inverse kinematic solution of the ideal foot is derived under the base-joint coordinate system in the last section. An approximate solution of inverse kinematics is obtained by mapping the idea location of the foot to the angle-joint. This process can be represented by:
In order to solve this nonlinear mapping problem, LS-SVM is utilized to approximate the mapping in this section. In other words, this nonlinear mapping between the ideal location of the foot and the joint angle ( is approached by constructing the optimal linear regression function, and then the inverse kinematic solution is found.
The forward kinematics model can be obtained directly by Equation (17). However, the result of inverse kinematics is an approximate solution, which can be applied in low precision occasions, but it may cause locomotion error when used in high precision occasions. Therefore, when choosing training samples, the results will be closer to the ideal solution after iteration computation by the approximate method. In this way, the training sample obtained is more accurate, and the accuracy of the training result is higher. From Equation (16) to Equation (20), Λ
y, Λ
z, and
are all related to
and
, which makes it difficult to obtain analytical solutions directly. In general, only an approximate solution is achieved according to the uncorrected joint rotation angle. This result is usually substituted into Equations (19) and (20), which are the kinematics inverse solutions of
and
after correction of the semi-round foot. Here, the values of
and
obtained by using the iterative method are substituted into Equations (19) and (20), and so forth, until they are no longer changing.
and
at this time are regarded as joint-angles under ideal mapping in the current position coordinate. According to the joint parameters
L2 = 15 cm and
L3 = 15 cm, the input/output curve surface of the forward/inverse kinematics model are shown in
Figure 4. N sets of data are selected as the training sample from it. Due to the base-joint angle
with correction as a precise value, only the values of
and
need to be solved, so two LS-SVM mapping models are established. Then, the desired trajectory position points are used as inputs of the trained LS-SVM mapping models. The outputs after calculation according to the models are the joint angles corresponding to the desired positions. The process of the inverse kinematics solution by LS-SVM is shown in
Figure 5.
3.4. Results and Error Analysis
In our experiments, the step size is 0.10 m, the leg lift height is 0.05 m, the foot radius is 0.02 m and the land coefficient is 0.6 in one gait cycle. The number of training samples is N = 400, the input of the training samples are Cartesian coordinate
of each point in the desired trajectory, and the output of the training samples is
obtained by multi-iteration. The number of test samples is
n = 200, the kernel function is a radial basis function,
γ = 100, and
σ2 = 0.2. The foot correction algorithm included trained model is used to solve the inverse kinematics of the robot with a semi-round rigid foot.
Figure 6 shows that the maximum errors of
and
obtained by the approximate calculation are only 0.008 rad and 0.016 rad, but the errors can be reduced to 0.003 rad and 0.005 rad by using LS-SVM. Although the iteration algorithm can provide a better tracking accuracy, the execution cycle is 0.27 ms, while after the use of LS-SVM, this cycle is 0.15 ms.
5. Conclusions
In this paper, the body trajectory misplacement problem caused by the rolling of a robot foot with a semi-round structure is analyzed. The influences of joint trajectory generation, foot tip trajectory, base joint vibration, contact force, body trajectory and energy consumption caused by the semi-round structure during robot movement are studied. Through the analysis of the forward/inverse kinematics of the robot leg, a correction methodology for a robot with a semi-round rigid foot based on LS-SVM is proposed. According to the results, the suggested method has higher accuracy than the approximation method used before, and has a faster calculation speed of the inverse kinematic solution than the iterative method. The locomotion analysis of the robot obtained by comparing correction methodology under a semi-round foot based on LS-SVM with a traditional generation indicates that the correction methodology can effectively improve the foot tip trajectory, so as to reduce the influence of the semi-round foot on the vibration of the base-joint and the impact of contact force. The validity of the correction methodology for the semi-round rigid foot is verified by conducting experiments on a hexapod walking robot. Using tripod gait and improved wave gait as examples, the results indicate that the correction methodology can reduce slipping and trajectory deviation of the robot. The current detection also demonstrates that the proposed methodology can reduce the system energy consumption to some extent. Therefore, the correction methodology has great significance for the locomotion performance and the stability of walking robots.
The theoretical contributions and novelty of this paper can be summarized as follows. An approach for the misplacement problem caused by rolling of a foot with a semi-round structure is proposed. A solution method based on LS-SVM with higher accuracy and faster calculation speed is also established. Influences of joint trajectory generation, foot tip trajectory, base joint vibration, and contact force caused by the semi-round structure are studied. Finally, a series of experiments are performed on a hexapod robot, and the locomotion of the robot is studied using the proposed method. Slipping, trajectory deviations, and system energy consumption of the robot are all reduced, which validates our theory. In addition, the suggested methodology can be used as an underlying control of the robot architecture and the theory is concise and straightforward in the software, which indicates that force control, gait generation, trajectory planning, and other advanced theories can be applied simultaneously. This means that further improvement can be performed without too much effort.