You do not have permission to edit this page, for the following reason:
You can view and copy the source of this page.
<!-- metadata commented in wiki content
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<big>Passive Periodic Motion of an Asymmetric Spring Loaded Inverted Pendulum Hopping Robot</big></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
Yingge NI<sup>1</sup>, Xiangyan MENG<sup>2*</sup></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
(School of Aircraft Engineering, Xi’an Aeronautical Institute, Xi’an 710077, China<sup>1</sup>;</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
Xi’an Founder Robot Co., Ltd, Xi’an 710072, China<sup>2</sup>)</div>
==Corresponding author: [mailto:xym_02@126.com xym_02@126.com]==
-->
'''Abstract:''' For improving the energy efficiency of hopping robot, an asymmetric spring loaded inverted pendulum hopping model with leg mass is considered. The period orbit problem of two-legged hopping robot is investigated. Firstly, the hybrid dynamic model is constructed. Then the passive hopping gaits are found using quasi-newton optimization method. Secondly, a PD controller is implemented to track the desired pitch trajectory of the body. Through applying control during stance phase, period orbits of the robot with offset body mass is obtained. Finally, the effect of the location of the leg mass and the body mass on hopping performances is investigated.
'''Keywords: '''hopping robot, asymmetric, passive dynamics, periodic motion, energy efficiency
===1 Introduction===
Hopping robots use isolated footholds, so it can negotiate uneven terrain. Due to these advantages, it has been studied by many researchers in recent years. Raibert and his coworkers had developed one-legged and two-legged hopping robots [1]based on a spring-loaded inverted pendulum (SLIP) model. These robots had a massless telescopic leg and a point foot. They use a three-part algorithm to control the robot. Since then, many jumping robots such as robots with spring leg[2-5] and robots with multi-joint leg[6-8] are constructed.
The SLIP model is the simplest mathematical model for hopping robot and it captured the basic dynamicbehaviors of the running of many animals<span id='cite-_Ref85573788'></span>[[#_Ref85573788|[9]]]. The control of the SLIP model is very simple because it doesn’t consider the dynamic coupling between the body and the legs. The control strategy based on SLIP model is necessary to be modified in order to successful apply in the control of the real robots[10], so it is necessary to construct a more realistic model similar to the real hopping robots.
In the hopping control, the energy consumption is especially crucial because it directly affects the size of the actuator and in return influences the weight of the robots. So, it is necessary to achieve the hopping gait with minimal power consumption. In this field, there are some remarkable researches on passive hopping. It has been found that using the proper initial conditions, the hopping robots can excuates periodic motion without input torque[11-12]. Papadopoulos and Cherouvim proved that the passive gait is the least energy-consuming gait[2]. Ahmadi and Buehler used hip and leg compliance to realize passive motion [3-4]. Schammass et al exploited the passive dynamics of the system to reduce the energy consumption <span id='cite-_neb2B61CDB5_6B04_4FED_8F96_C3854775F3E0'></span>[[#_neb2B61CDB5_6B04_4FED_8F96_C3854775F3E0|[13]]]. The simulation results shown that the robot including hip compliance reduced approximately 67% of the total energy compared to the robot without hip compliance. Hyon et al used a new gait-searching algorithm to find the passive orbit and proposed two kinds of controllers to realize orbital stabilization [14-16].
All of these hopping robots have symmetric configuration with the center of mass (COM) along the geometrical axis of a telescopic leg. In reality, the COM of most animals offsets the hip joint and the weight of the leg can’t be ignored. The offset body-mass offers greater flexibility in the design of hopping robot because the actuator can be placed within the body freely. The asymmetrical body mass configurations have been considered by several scholars [17-23]. Kuswadi et al. proposed an asymmetric model of a single-legged robot and realized a sustained hopping motion. The center of gravity of the model isn’t on the line of action of the actuator <sup>[19]</sup>. Sayyad et al analyzed a springy-legged offset-mass (SLOM) configuration and proposed an energy compensated model to explore the possibility of a periodic motion [20]. But all these paper doesn’t consider the rotation of the body. Poulakakis et al used a SLIP-embedding control law to control an asymmetric spring loaded inverted pendulum (ASLIP) hopping model, but the leg is assumed to be massless [22-23].
In this paper, an asymmetric spring loaded inverted pendulum hopping model (ASLIP) is proposed, where the leg mass is considered and the center of mass of the body is not located in the hip joint. The goal is to study of the effect of the offset mass of the body and the mass of the leg on the robot’s hopping performance.
This paper is organized as follows. In Section 2, the dynamic model is presented along with its mechanical properties and motion equations. In Section 3, the Poincare mapping is used to analyze the passive periodic hopping motion of the hopping robot and the fix point is obtained using optimization, and the effects of the offset mass and the leg mass on the hopping motion are presented in Section 4.
===2. Dynamical model===
<span id='cite-_Ref503256883'></span>[[#_Ref503256883|Fig. 1]] is the simplified model of the ASLIP hopping robot. The hopping robot consists of two parts, a body and a springy telescope leg. The body and the leg is connected by a torsional spring on the hip joint ''H''. In the model, the hip joint doesn’t coincide with the center of mass of the body. The mass of the leg is also taken into account. A coupling between the leg swing motion and the body rotation is introduced, which made the analysis of the dynamics of the robot more complicated. Supposing the position of the center of mass of the leg ''S''<sub>1 </sub>and the position of the center of mass of the body ''S''<sub>2 </sub>are given by ''FS''<sub>1 </sub>= ''αl'' and ''HS''<sub>2 </sub>= ''βl<sub>b</sub>'', where <math>0<\alpha ,\beta <1</math> . The variable ''l''denotes the length of the leg, ''θ'' represents the leg angle with respect to the vertical axis and ''φ'' indicates the body angle with respect to the horizontal axis. Other physical parameters and its values are listed in Table 1.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
[[Image:Review_801861383672-image2.png|144px]] </div>
<div id="_Ref503256883" class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig. 1 Model of robot</span></div>
The hopping motion of the robot is composed of two phases: stance phase and flight phase. The switch from the stance phase to the flight phase is called lift-off, triggered by <math>l\geq l_0</math> . The switch from the flight phase to the stance phase is called touchdown, triggered by <math>zh\leq l_0cos(\theta )</math> . We use the event-based subscript to describe the motion during different phases. The subscript <math>st</math> represents the stance phase, <math>fl</math> represents the flight phase, <math>td</math> is the moment at touchdown and <math>l_0</math> is the moment at lift off.
<div id="_Ref511379307" class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Table 1 Physical parameters</span></div>
{| style="width: 61%;margin: 1em auto 0.1em auto;border-collapse: collapse;"
|-
| style="border-top: 2pt solid black;border-bottom: 1pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">notation</span>
| style="border-top: 2pt solid black;border-bottom: 1pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">units</span>
| style="border-top: 2pt solid black;border-bottom: 1pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">value</span>
|-
| style="border-top: 1pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">body mass ''m<sub>b </sub>''</span>
| style="border-top: 1pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">kg</span>
| style="border-top: 1pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">9</span>
|-
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">leg mass ''m<sub>l </sub>''</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">kg</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">3</span>
|-
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">body length'' l<sub>b </sub>''</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">m</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">0.22</span>
|-
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">body inertia ''J<sub>b </sub>''</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">kg.m<sup>2</sup></span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">0.5</span>
|-
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">leg inertia'' J<sub>l </sub>''</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">kg.m<sup>2</sup></span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">0.11</span>
|-
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">leg spring stiffness ''k<sub>l</sub>''</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">N/m</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">3000</span>
|-
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">hip spring stiffness ''k<sub>h</sub>''</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">Nm/rad</span>
| style="text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">10</span>
|-
| style="border-bottom: 2pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">natural leg length ''l''<sub>0</sub></span>
<span style="text-align: center; font-size: 75%;">gravity acceleration ''g''</span>
| style="border-bottom: 2pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">m</span>
<span style="text-align: center; font-size: 75%;">m/s<sup>2</sup></span>
| style="border-bottom: 2pt solid black;text-align: center;vertical-align: top;"|<span style="text-align: center; font-size: 75%;">0.5</span>
<span style="text-align: center; font-size: 75%;">9.81</span>
|}
During the stance phase the leg is in contact with ground at a toe point ''F ''(end of the leg). Supposing that the robot does not bounce back nor slip relative to the ground, the leg rotates around the toe. Then the toe can be modeled as a pivot. We choose polar coordinates <math>\boldsymbol{q}_{st}={\left[\begin{array}{ccc}
l & \theta & \varphi
\end{array}\right]}^T</math> as the generalized coordinates. Using the Lagrange method[22], the equations of motion is obtained as:
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>\boldsymbol{M}_{st}(\boldsymbol{q}_{st}){\boldsymbol{\ddot{q}}}_{st}+</math><math>\boldsymbol{C}_{st}(\boldsymbol{q}_{st},{\boldsymbol{\dot{q}}}_{st}){\boldsymbol{\dot{q}}}_{st}+</math><math>\boldsymbol{G}_{st}(\boldsymbol{q}_{st})+\boldsymbol{K}_{st}(\boldsymbol{q}_{st})=</math><math>{\boldsymbol{\tau }}_{st}</math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (1)
|}
where <math>\boldsymbol{M}_{st}</math> is the symmetric positive definite inertia matrix during the stance phase, which deponds on the generalized coordinates <math>\boldsymbol{q}_{st}</math> . <math>\boldsymbol{C}_{st}</math> is the matrix containing centrifugal force and Coriolis force during the stance phase, which is a function of <math>\boldsymbol{q}_{st}</math> and <math>{\boldsymbol{\dot{q}}}_{st}</math> . <math>\boldsymbol{G}_{st}</math> is the gravity vector during the stance phase, which is a function of <math>\boldsymbol{q}_{st}</math> . <math>\boldsymbol{K}_{st}</math> is the equivalent driving torque vector of torsion spring during the stance phase, which is related to <math>\boldsymbol{q}_{st}</math> . <math>{\boldsymbol{\tau }}_{st}={\left[\begin{array}{ccc}
f & 0 & {\tau }_{st}
\end{array}\right]}^T</math> , <math>f</math> '' ''is the driving force to the leg, while <math>{\tau }_{st}</math> denotes the hip torque during the stance phase.
During the flight phase the leg loses contact with the ground. The COM of the robot moves along the ballistic trajectory and the angular momentum of the robot about the COM is conserved. The length of the leg is assumed to keep constant. We select Cartesian coordinates <math>\boldsymbol{q}_{fl}={\left[\begin{array}{cccc}
x_h & z_h & \theta & \phi
\end{array}\right]}^T</math> as the generalized coordinates, <math>\left(x_h,z_h\right)</math> is the position of the hip joint. The dynamics is given by:
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>\boldsymbol{M}_{fl}(\boldsymbol{q}_{fl}){\boldsymbol{\ddot{q}}}_{fl}+</math><math>\boldsymbol{C}_{fl}(\boldsymbol{q}_{fl},{\boldsymbol{\dot{q}}}_{fl}){\boldsymbol{\dot{q}}}_{fl}+</math><math>\boldsymbol{G}_{fl}(\boldsymbol{q}_{fl})+\boldsymbol{K}_{fl}(\boldsymbol{q}_{fl})=</math><math>{\boldsymbol{\tau }}_{fl}</math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (2)
|}
where <math>\boldsymbol{M}_{fl}</math> is the symmetric positive definite inertia matrix during the flight phase, which deponds on the generalized coordinates <math>\boldsymbol{q}_{fl}</math> . <math>\boldsymbol{C}_{fl}</math> is the matrix containing centrifugal force and Coriolis force during the flight phase, which is a function of <math>\boldsymbol{q}_{fl}</math> and <math>{\boldsymbol{\dot{q}}}_{fl}</math> . <math>\boldsymbol{G}_{fl}</math> is the gravity vector during the flight phase, which is a function of <math>\boldsymbol{q}_{fl}</math> . <math>\boldsymbol{K}_{fl}</math> is the equivalent driving torque vector of torsion spring during the flight phase, which is related to <math>\boldsymbol{q}_{fl}</math> . <math>{\boldsymbol{\tau }}_{fl}={\left[\begin{array}{cccc}
0 & 0 & 0 & {\tau }_{fl}
\end{array}\right]}^T</math> . <math>{\tau }_{fl}</math> is the hip torque during the flight phase.
At touchdown, the leg touches down the ground and inelastic impulse occurs. The generalized displacements keep constant, but the generalized velocities change instantaneously.
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>{\boldsymbol{\dot{q}}}_{td+}=\boldsymbol{g}\left({\boldsymbol{\dot{q}}}_{td-}\right)</math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (3)
|}
where the subscript'' td''– and ''td''+ represents the moment before and after touchdown respectively.
At lift-off, there are no discontinuous changes of states except for:
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>{\dot{l}}_{lo}=0</math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (4)
|}
It can be seen that during the landing phase, the leg compresses and releases the spring to realize the energy conversion from the above equations. Since the loss caused by friction is not considered, the mechanical energy is conserved. In the flight phase, the mechanical energy of the system is also conserved. At touchdown, the robot legs collide with the ground, which will lead to energy loss. In order to simplify the analysis, the energy loss at touchdown is not considered in this paper. The robot is a complex switching system with multi variables, strong coupling and nonlinearity, so it is impossible to obtain the analytical solution of the trajectory of the system, and can only be solved by numerical calculation.
===3 Passive hopping motion===
To improve the energy efficiency, firstly we consider the completely passive hopping which means that there is no driving force applied on the robot. A very useful and common method to study the existence and stability of periodic motions is the Poincare map. According to the trajectory of the state variables in the Poincare section, we can find the periodic motion. Through Poincare map, we can transform the existence of the periodic orbits of the hopping robot to the fixed point in the Poincare section.
The robot has 4 DOF during flight and 3 DOF during stance. For reducing the number of the independent variables, we choose the moment just after touchdown as the Poincare section and state vector is defined as <math>x={\left[\begin{array}{cccccc}
l_{td} & \theta {}_{}^{td} & {\varphi }_{td} & {\dot{l}}_{td} & {\dot{\theta }}_{td} & {\dot{\varphi }}_{td}
\end{array}\right]}^T</math> . For <math>l_{td}=l_0</math> at touchdown, the number of the independent variables reduces to 5. In the process of iteration, let the state vector in the ''j''<sup>th </sup>step is '''x''' ''<sup>j</sup>'', we can get the state vector '''x''' ''<sup>j</sup>''<sup>+1 </sup>in the (''j''+1)<sup>th</sup> step after one mapping. This process can be described as a Poincare map <math>x^{j+1}=P\left(x^j\right)</math> .
For a certain state vector '''x''', the point is called a fixed point if it maps itself through one map,
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>\boldsymbol{x}=\boldsymbol{P}\left(\boldsymbol{x}\right)</math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (5)
|}
Then we build the Poincare map of the hopping robot. The dynamic equations (1) and (2) are rewritten into a standard state-space form.
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>\boldsymbol{P}_{st}:{\boldsymbol{\dot{x}}}_{st}=\boldsymbol{f}_{st}\left(\boldsymbol{x}_{st},\boldsymbol{u}_{st}\right)</math> '' ''
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (6)
|}
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>\boldsymbol{P}_{fl}:{\boldsymbol{\dot{x}}}_{fl}=\boldsymbol{f}_{fl}\left(\boldsymbol{x}_{fl},\boldsymbol{u}_{fl}\right)</math> '' ''
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (7)
|}
where <math>\boldsymbol{x}_{st}={\left[\boldsymbol{q}_{st}^\mbox{T},{\boldsymbol{\dot{q}}}_{st}^\mbox{T}\right]}^\mbox{T}</math> is the state vector during the stance phase and <math>\boldsymbol{x}_{fl}={\left[\boldsymbol{q}_{fl}^\mbox{T},{\boldsymbol{\dot{q}}}_{fl}^\mbox{T}\right]}^\mbox{T}</math> during the flight phase. Because the number of the state variables between the stance phase and the flight phase is different, we need to construct two mapping between the transitions of these two phases. The mapping is represented by the following equations.
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| [[Image:Review_801861383672-image41.png|234px]] '' ''
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (8)
|}
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>\boldsymbol{P}_{td}:\lbrace \begin{array}{c}
l_{td}=l_0\mbox{ }\mbox{ }\mbox{ }\mbox{ }\mbox{ }\mbox{ }\mbox{ }\mbox{ }\mbox{ }\mbox{ }\\
{\dot{l}}_{td}=-{\dot{x}}_{h,td}sin\left({\theta }_{lo}\right)+{\dot{z}}_{h,td}cos\left({\theta }_{lo}\right)
\end{array}</math> '' ''
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (9)
|}
Combining these four sub-maps, then the whole Poincare mapping is <math>\boldsymbol{P}=\boldsymbol{P}_{st}\circ \boldsymbol{P}_{lo}\circ \boldsymbol{P}_{fl}\circ \boldsymbol{P}_{td}</math> .
<span id='_Ref511316978'></span>Since the Poincare map of the hopping robot have been constructed, now we consider the method of finding the fixed point. The Newton-Raphson’s method <sup>[15]</sup> is commonly used to find the fixed point.
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>x^{j+1}=x^{j+1}+{\left[I-DP(x_j)\right]}^{-1}\left[P(x_j)-\right. </math><math>\left. x_j\right]</math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (10)
|}
where, '''I '''is the identity matrix, <math>D\boldsymbol{P}\left(\boldsymbol{x}\right)=\partial \boldsymbol{P}\left(\boldsymbol{x}\right)/\partial \boldsymbol{x}</math> is the jacobian matrix of the Poincare map at '''x''' ''<sup>j</sup>''.
Because the Newton-Raphson’s method demands the initial value of the state vector to be very close to the accurate value of the fixed point, it’s difficult to give the initial value. If the initial value is selected improperly, the algorithm will diverge soon.
In this paper we used the optimization algorithm to solve the nonlinear equations. Firstly we transformed the problem into a minimum value problem. Eq. <span id='cite-_Ref511317147'></span>[[#_Ref511317147|(5)]] can be rewritten as
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>f(x)=\Vert P(x_j)-x\Vert </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (11)
|}
Then the problem becomes an unconstrained optimization problem. We can use the quasi-Newton method to find the minimum value of Eq.<span id='cite-_Ref511318234'></span>[[#_Ref511318234|(11)]]. If the minimum value of <math>f(x)</math> is zero, the point''' x''' is considered as the fixed point. In reality, due to calculation error, the point is considered as the fixed point if <math>f(x)<{10}^{-6}</math> .
In this paper, quasi Newton method is used to solve the minimum problem.
{| class="formulaSCP" style="width: 100%; text-align: center;"
|-
|
{| style="text-align: center; margin:auto;"
|-
| <math>x_{k+1}=x_k\mbox{-}H_\mbox{k}^{\mbox{-1}}\cdot g_k</math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (12)
|}
where <math>\boldsymbol{s}_k=x_{k+1}\mbox{-}x_k</math> , <math>H_k=B_k^{-1}</math> , <math>y_k=\nabla f\left(x_{k+1}\right)\mbox{-}\nabla f\left(x_k\right)</math> , <math>H_{k+1}=H_k-\frac{H_ky_ky_k^TH_k}{y_k^TH_ky_k}+\frac{s_ks_k^T}{y_k^Ts_k}</math> .
===4. The effect of the center of mass of the leg and the body ===
Using the proposed algorithm, passive hopping gaits are found. According to the Hyon[14], all passive running gaits of the ARL monopod robot were unstable except for a vertical hopping. The obtained gaits of our hopping robot are also quasi-period ones, not stable limit cycle. The distance between the COM of the leg and the toe is ''αl'', and the distance between the COM of the body and the hip joint is ''βl<sub>b</sub>''. The location of the COM of the leg and the body is depend on α and β respectively, we examine the influence of α and β on the jumping performance of the robot.
====4.1 The effect of the center of mass of the leg ====
Firstly the effect of α is examined when the COM of the body is coincide with hip joint (β is zero). The base parameters given in <span id='cite-_Ref511379307'></span>[[#_Ref511379307|Table 1]]. The results are shown in <span id='cite-_Ref511379460'></span>[[#_Ref511379460|Fig. 2]]. The location of the COM of the leg is displaced along the leg from the toe to the hip joint, which means that the value of α is between 0 and 1. When α =0, the center of the leg is located in the toe and the model is similar to a two-mass model; when α =1, the center lies in the hip joint and the model is the ARL monopod. In <span id='cite-_Ref511379460'></span>[[#_Ref511379460|Fig.2]] it can be seen that when α increases, the apex height of the COM of the robot and the compression of the leg spring decreases, while the step length increases. The step length reached at the maximum value when α =0.7. The following conclusions can be drawn. If the robot is wanted to have a long jump, the COM of the leg should be close to the hip joint. If the robot is wanted to have a high jump, it should be far away from the hip joint and at the same time the robot should provide greater power by increasing the compression of the spring.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
[[File:Review_801861383672_1330_fig2.png]] </div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig. 2 The step length , the apex height and the minimum value of the leg length during stance phase</span></div>
In Fig. 3 with the increase of α, the angle of the center of mass at the take-off time (take-off angle) decreases, the horizontal velocity of the center of mass increases, and the vertical velocity decreases. With α= 0.9 these velocities are approximately equal. The decrease of vertical velocity means the decrease of flight time, but the step size of the robot increases with the increase of horizontal velocity. Due to the dual influence of flight time and horizontal velocity, the robot α=0.7, The maximum step size is reached at 0.7.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
[[File:Review_801861383672_8608_fig3.png]] </div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.3 The horizontal and vertial velocity of the COM at takeoff </span></div>
During the change of leg centroid, the stance time changed very little and remained around 0.2s. However, as the COM of the leg gets closer to the toe, the total jump time increases and the duty cycle decreases, which means that the time spent by the robot in the take-off phase increases and the gait frequency decreases. Before the next jump, the swing of the leg is controlled more easily.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
[[File:Review_801861383672_7950_fig4.png]] </div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.4 Bounce period, stance time v.s. α </span></div>
In Figs. 5 and 6, it can be seen that with the increase of α, the center of mass of the leg is closer to the hip joint, and the body angle amplitude decreases, but the leg angle amplitude increases. The closer the center of mass of the leg is to the hip joint, the closer the leg swing curve is to the sine curve. When the center of mass of the body is located at the hip joint, the leg swing curve is a sine curve.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
[[File:Review_801861383672_6031_fig5.png]] </div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.5 Trajectory of the leg </span></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
[[File:Review_801861383672_7763_fig6.png]] </div>
<div id="_Ref511379460" class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.6 Trajectory of the body </span></div>
====4.2 The effect of the center of mass of the body ====
<span id='_GoBack'></span>Then we investigate the effect of the COM of the body on the hopping performance, it can be expressed by ''β''. The periodic gait of the hopping robot without active control is in Fig.7 when the COM of the body doesn’t locate in the hip joint. It shows that there was little change in the angle of the leg and the body, the motion of the robot is a vertical hopping and the robot doesn’t leave the ground, so it is necessary to control the robot in order to get a forward hopping. The control scheme is using the hip actuator to control the pitch angle to track the desired trajectory during the stance phase. A PD (Proportional-Derivative) controller is used to track the desired pitch trajectory[24-26].
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
[[File:Review_801861383672_4570_fig7.png]] </div>
<div id="_Ref511381173" class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig. 7 Periodic passive hopping gait without active control </span></div>
Using the pitch angle of passive hopping of ARL robot as the desired trajectory and computing the limit cycle with the optimization method, the passive gait of the asymmetrical hopping robot is obtained. <span id='cite-_Ref511381050'></span>[[#_Ref511381050|Figs. 8]] and 9 are the posture and the limit cycle during one hoping cycle. It is can be seen that with active control, a satisfactory periodic motion is obtained when the robot has an asymmetric body mass. It can be seen that the toes of the robot collided with the ground in the flight phase. In order to prevent the toes of the robot from contacting the ground in the flight stage, the jumping height of the robot should be increased.
[[File:Review_801861383672_9300_fig8.png]]
<div id="_Ref511381050" class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig. 8 Active periodic gait of the hopping robot when ''α''=0.7, ''β''=0.13 </span></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">
[[File:Review_801861383672_3557_fig9.png]]
</span></div>
<div id="_Ref511381566" class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.9 Limit cycle of the hopping robot </span></div>
Although in theory β can be taken in [0,1], β is less than 1 for the following two reasons. The first reason is that it is unable to find fixed point. The second reason is that the minimum length of the leg length at the landing stage is 0, which means that the compression of the spring reaches 100%. In fact, due to the structure of the spring itself, the compression cannot be pressed to the bottom. The above two cases can be increased by improving the control method and increasing the spring stiffness to increase the range of β. As can be seen from Fig.10, with the increase of α, the maximum allowed value of β is small. It shows that the closer the robot leg is to the hip joint, the smaller the allowable eccentricity of the body.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">
[[File:Review_801861383672_4471_fig10.png]]
</span></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.10 The maximum allowable value of β v.s. α </span></div>
Fig.11 shows that with the increase of β, the angle of the center of mass at the take-off decreases, the vertical velocity remains almost unchanged, while the horizontal velocity increases rapidly, and the step size of the robot becomes larger. The farther the body centroid is from the hip joint, the better. Because the change of bounce cycle time is very small, most of the energy provided by the leg spring is transformed into forward movement. However, due to the low centroid height of the robot at the take-off , the maximum height in the flight phase is also low, and the robot toe is easy to collide with the ground. So β cannot be too large.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">
[[File:Review_801861383672_3775_fig11.png]]
</span></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.11 The horizontal and vertical velocity of the center of mass at take-off </span></div>
As can be seen from Fig.12, with the increase of β, the minimum length of the leg in the landing stage decreases rapidly, and the compression amount of the spring changes from 38% to 69%, indicating that the farther the center of mass of the body is from the hip joint, the greater the force required to be provided by the leg spring. It should be considered to increase the stiffness of the spring.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">
[[File:Review_801861383672_6465_fig12.png]]
</span></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.12 Minimum length of legs in landing phase with different of β </span></div>
Fig.13 shows that with the increase ofβ, the center of mass of the body deviates more and more from the hip joint, and the rotation amplitude of the body and legs increases. The closer the body centroid is to the hip joint, the closer the leg swing curve is to the sinusoidal curve. The angle of the body and leg increases at the take-off, correspondingly the take-off angle of the body centroid decreases. Body eccentricity provides a larger take-off range for robot motion.
{|
|-
| [[Image:Review_801861383672-image65.png|258px]]
| [[Image:Review_801861383672-image66.png|center|276px]]
|}
(a) (b)
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.13 the leg angle and the body angle vs. time </span></div>
Fig.14 shows that the greater the body eccentricity, the greater the driving torque required by the robot to drive the body pitching motion in the landing phase, because the swing range of the body in the landing phase also becomes larger.
<div id="_Ref509241492" class="center" style="width: auto; margin-left: auto; margin-right: auto;">
[[File:Review_801861383672_2649_fig14.png]]
</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">
<span style="text-align: center; font-size: 75%;">Fig.14 Influence of body eccentricity ratio on driving torque </span></div>
===5. Conclusion===
The period orbit problem of an asymmetric spring loaded inverted pendulum is addressed. The dynamic equations of the two link robot are established. Then the Poincare mapping method is used to turn the solution of the periodic motion of the hopping robot into the solution of the fixed point, and then the optimization method is used to obtain the fixed point of the hip robot. With a PD controller, a period orbit can be obtained. Through investigating the effect of the location of the leg mass and the body mass on the hopping performance, if the robot is wanted to jump longer, the center of mass of the leg and the body should be far away from the hip joint.
===References:===
<span id='_Ref12350684'></span><span style="text-align: center; font-size: 75%;">[[#cite-_Ref12350684|[1].]] Raibet, M H.,Legged Robots That Balance[M]. Cambridge: the MIT Press, 1986.</span>
<span id='_Ref85575208'></span><span style="text-align: center; font-size: 75%;">[[#cite-_Ref85575208|[2].]] Zeglin, G., The Bow Leg Hopping Robot[D]. 1999, Carnegie Mellon University.</span>
<span id='_nebBDB59058_F776_465E_B5AC_AC541DEFCC1F'></span><span style="text-align: center; font-size: 75%;">[[#cite-_nebBDB59058_F776_465E_B5AC_AC541DEFCC1F|[3].]] Ahmadi, M. and Buehler, M.,A Control Strategy for Stable Passive Running[C]. Proc. IEEE Conf. Intelligent Systems and Robots. 1995. Pittsburgh, PA.</span>
<span id='_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B'></span><span style="text-align: center; font-size: 75%;">[[#cite-_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B|[4].]] Ahmadi, M. and Buehler, M., Stable Control of a Simulated One-Legged Running Robot with Hip and Leg Compliance[J]. IEEE Transactions on Robots and Automation, 1997. 13(1): 96-104.</span>
<span id='_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B'></span><span style="text-align: center; font-size: 75%;">
[5]. Zeglin, G.J., Uniroo-a one legged dynamic hopping robot[D]. 1991, Massachusetts Institute of Technology.
<span id='_Ref85575246'></span><span style="text-align: center; font-size: 75%;">[[#cite-_Ref85575246|[6].]] Recovering, storing and releasing energy based on a natural model[OL]. 2014. [http://www.festo.com/cms/en_corp/13704.htm http://www.festo.com/cms/en_corp/13704.htm]l</span>
<span id='_Ref85575554'></span><span style="text-align: center; font-size: 75%;">[[#cite-_Ref85575554|[7].]] Hutter, M, Remy, C D, Hoepflinger, M A et al., ScarlETH: Design and control of a planar running robot[C]. IEEE/RSJ International Conference on Intelligent Robots and Systems, San Francisco, CA, USA: 2011, 562-567.</span>
<span id='_Ref85573788'></span><span style="text-align: center; font-size: 75%;">[[#cite-_Ref85573788|[8].]] Blickhan, B, The spring-mass model for running and hopping[J]. J.Biomechanics, 1989, 22(11/12): 1217-1227.</span>
<span id='_Ref85571161'></span><span style="text-align: center; font-size: 75%;">[[#cite-_Ref85571161|[9].]] Cherouvim N , Papadopoulos E . Single Actuator Control Analysis of a Planar 3DOF Hopping Robot[C]. Robotics: Science and Systems I, June 8-11, 2005, Massachusetts Institute of Technology, Cambridge, Massachusetts. 2005.</span>
<span id='_Ref17710313'></span><span id='_nebF72182DD_0142_4EDA_B461_376335BF0C09'></span><span style="text-align: center; font-size: 75%;">[[#cite-_nebF72182DD_0142_4EDA_B461_376335BF0C09|[10].]] Papadopoulos, E, Cherouvim, N.,On increasing energy autonomy for a one-legged hopping robot[C]. Proceedings of the 2004 IEEE International Conference on Robotics and Automation. 2004. 4645-4650.</span>
<span id='_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B'></span><span style="text-align: center; font-size: 75%;">
[11]. François, C. and Samson, C., A New Approach to the Control of the Planar One-Legged Hopper[J]. International Journal of Robotics Research, 1998. 17(11): 1150-1166.
<span id='_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B'></span><span style="text-align: center; font-size: 75%;">
[12]. Thompson, C.M. and Raibert, M.H., Passive Dynamic Runniug. Experimental Robotics I, 1989: 74-83
<span id='_neb2B61CDB5_6B04_4FED_8F96_C3854775F3E0'></span><span style="text-align: center; font-size: 75%;">[[#cite-_neb2B61CDB5_6B04_4FED_8F96_C3854775F3E0|[13].]] Schammass, A., Caurin,G A P, Valente, C M O., Control of a one-legged robot with energy savings[J]. Journal of the Brazilian Society of Mechanical Sciences & Engineering, 2001. 23(1): 41-48.</span>
<span id='_neb52EE5DEE_BAB6_4DAC_A20D_6AC27787712F'></span><span style="text-align: center; font-size: 75%;">[[#cite-_neb52EE5DEE_BAB6_4DAC_A20D_6AC27787712F|[14].]] Hyon, S. and Emura, T.. Quasi-periodic gaits of passive one-legged hopper[C]. IEEE/RSJ International Conference on Intelligent Robots and Systems. 2002.</span>
<span id='_neb7640F6CD_0F2B_4E48_B930_2867006FF860'></span><span style="text-align: center; font-size: 75%;">[[#cite-_neb7640F6CD_0F2B_4E48_B930_2867006FF860|[15].]] Hyon, S. and Emura, T., Energy-preserving control of a passive one-legged running robot[J]. Advanced Robotics, 2004. 18(4): 357-381.</span>
<span id='_Ref12353154'></span><span style="text-align: center; font-size: 75%;">[[#cite-_Ref12353154|[16].]] Hyon S, Emura T, and Ueta T. Delayed feedback control of one-legged passive running robot[C]. Sice 2004 Conference. 2004. 949-954.</span>
<span id='_nebEDF936BE_0B8E_45AC_99C2_65ECDA8F4FB6'></span><span style="text-align: center; font-size: 75%;">[[#cite-_nebEDF936BE_0B8E_45AC_99C2_65ECDA8F4FB6|[17].]] Lei, B., et al. Stability analysis of quasi-periodic hopping of a passive one-legged robot with compliant hip joint[C]. IEEE International Conference on Mechatronics and Automation. 2014.</span>
<span id='_nebE5FC569D_7EF3_45E1_A38F_45D02981FAD7'></span><span style="text-align: center; font-size: 75%;">[[#cite-_nebE5FC569D_7EF3_45E1_A38F_45D02981FAD7|[18].]] Wei, T., et al. Design of a 5-cm Monopod Hopping Robot. in IEEE International Conference on Robotics & Automation. 2000: IEEE.</span>
<span id='_neb4A4A8CC9_A46A_4BCF_BC9D_670B4C03FF5A'></span><span style="text-align: center; font-size: 75%;">[[#cite-_neb4A4A8CC9_A46A_4BCF_BC9D_670B4C03FF5A|[19].]] Kuswadi, S., et al., A one linear actuator hopping robot:modeling and control[J]. Advanced Robotics, 2003. 17(8): 709-737.</span>
<span id='_neb8F66AAB4_7662_4F92_98D1_63D73F7A88B8'></span><span style="text-align: center; font-size: 75%;">[[#cite-_neb8F66AAB4_7662_4F92_98D1_63D73F7A88B8|[20].]] Sayyad, A., B. Seth and K.K. Issac, Dynamics and Control of a One-legged 2-D SLOM Hopping Robot[C], 12th IFToMM World Congress. 2007: Besançon.</span>
<span id='_nebE783E321_38AC_4A39_936A_93AB94B9C761'></span><span style="text-align: center; font-size: 75%;">[[#cite-_nebE783E321_38AC_4A39_936A_93AB94B9C761|[21].]] Seth B, Seshu S, Shanmuganathan P V, et al. Search for Initial Conditions for Sustained Hopping of Passive Springy-Leg Offset-Mass Hopping Robot[J]. Journal of Dynamic Systems, Measurement, and Control. 2007, 129(4): 5. </span>
<span id='_Ref12374846'></span><span id='_Ref17710425'></span><span style="text-align: center; font-size: 75%;">[[#cite-_Ref17710425|[22].]] Poulakakis, I. and J.W. Grizzle, The Spring Loaded Inverted Pendulum as the Hybrid Zero Dynamics of an Asymmetric Hopper[J]. IEEE Transactions on Automatic Control, 2009. 54(8):1779-1793.</span>
<span id='_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B'></span><span style="text-align: center; font-size: 75%;">
[23]. Poulakakis, I, Spring loaded inverted pendulum embedding: Extensions toward the control of compliant running robots[C]. 2010 IEEE International Conference on Robotics and Automation (ICRA), Anchorage, Alaska, USA: 2010, 1050-4729. </span>
<span id='_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B'></span><span style="text-align: center; font-size: 75%;">
[24]. Terry, P., G. Piovan and K. Byl. Towards precise control of hoppers: Using high order partial feedback linearization to control the hopping robot FRANK[C]. IEEE 55th Conference on Decision and Control (CDC) ARIA Resort & Casino. 2016: Las Vegas, USA.
<span id='_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B'></span><span style="text-align: center; font-size: 75%;">
[25]. Zou, H,Schmiedeler, J P, The effect of asymmetrical body-mass distribution on the stability and dynamics of quadruped bounding[J]. IEEE Transactions on Robotics, 2006, 22(4): 711-723.
<span id='_nebFD2E02D8_1E40_4008_8B88_D2915396DF2B'></span><span style="text-align: center; font-size: 75%;">
[26]. Hua, N,Sun, R,Hu, Let al., Control of a cheetah robot in passive bounding gait[J]. Journal of Bionic Engineering, 2016, 13(002): 283-291.
Return to NI MENG 2022a.
Published on 13/01/23
Accepted on 01/01/23
Submitted on 15/10/22
Volume 39, Issue 1, 2023
DOI: 10.23967/j.rimni.2023.01.002
Licence: CC BY-NC-SA license
Are you one of the authors of this document?