2.2.1. Coordinate System Definition
As shown in
Figure 2, the body frame
is defined with its origin at the lander’s body center. The
x-axis of
points forward (in the direction of travel) and the
z-axis is perpendicular to the upper plane of the body (pointing roughly upward). Each leg
i (for
) has an associated leg frame
with origin at the leg’s hip joint (the intersection point of the axes of the three leg joints). In frame
, the
x-axis points from the leg hip toward the body center, and the
y-axis is chosen parallel to the
z-axis of
(so all frames are oriented consistently in the vertical direction). The world frame
is a fixed reference frame (e.g., lunar surface frame) that coincides with
at the initial time. All coordinate systems are right-handed Cartesian frames.
For each leg, we define the vector of generalized coordinates (active joint angles) as , where is the abduction angle, is the thigh angle, and is the rocker arm angle (related to the knee joint). In the following, since all legs have identical structure, we derive the leg dynamics for a generic leg and omit the leg index i for simplicity.
2.2.2. Body Dynamic Modeling
The Lunar Quadruped Robot is modeled as a central rigid body supported by four legs, as shown in
Figure 2. Let
be the total mass of the body, and
its inertia tensor about the body frame origin
. We denote by
the vector from
to the body center of mass (COM). For each leg, let
be the origin of its leg frame (coincident with the hip joint location), and
the vector from
to
. The vector from
to the leg’s tip is denoted
, and similarly we denote by
the vector from the leg frame origin
to the tip (thus
in coordinates of
). When the lander contacts the ground, a ground reaction force
will act on the tip of each contacting leg (pointing upward from the ground on the tip). Each leg contains active joint actuators that behave as tunable spring-damper units (by compliance control), characterized by spring stiffness coefficients
and damping coefficients
for the abduction, thigh, and rocker joints respectively. In addition, each leg has a passive linear spring (in the parallel five-bar mechanism of the knee) with stiffness
.
Using Newton-Euler equations, the translational and rotational equations of motion for the body can be written as:
where,
and
are the linear acceleration and angular velocity of the body in
, and
is the gravitational acceleration vector (in
coordinates). The first equation is simply
for the body center of mass, stating that the net force (gravity plus all ground contact forces
on the legs) equals the total mass times acceleration. The second equation is the angular momentum balance about the body’s center of mass (incorporating the gyroscopic term
) and states that the sum of moments due to all ground reaction forces about
equals the time rate of change of angular momentum of the body. In these equations,
and
are expressed in the body frame.
When the lander is in flight (no ground contact), . During landing, as soon as a leg’s foot contacts the ground, the corresponding becomes nonzero and the leg begins to compress, causing (the tip position relative to the body) to change with time. Thus, to solve the above body equations for the landing dynamics, we first need the leg tip trajectories , which are obtained by solving the leg dynamic model as derived next.
2.2.5. Dynamic Model
We derive the dynamic equations of a single leg of the Lunar Quadruped Robot using d’Alembert’s principle in the form of virtual work. Let the leg’s generalized coordinates be , where is the hip abduction (or swing) angle, is the thigh (upper leg) rotation angle, and is the shank (lower leg) rotation angle. These angles uniquely define the leg configuration. We consider infinitesimal virtual displacements , , and in each of these coordinates. Correspondingly, each link j (for ) of the leg experiences a virtual linear displacement of its center of mass (COM) and a virtual angular displacement about its COM.
In applying d’Alembert’s principle, we introduce the inertial force and inertial torque for each link
j:
where,
is the mass of link
j,
its moment of inertia about the relevant axis,
the linear acceleration of its COM, and
its angular acceleration. The negative signs indicate these inertial forces/torques act opposite to the actual accelerations. The leg is also subjected to applied forces/torques: (i)
,
,
are the torques applied by the actuators at the joints corresponding to
,
,
, respectively (positive in the direction of increasing each coordinate); (ii) a passive linear spring (with an inline damper) in the leg’s parallelogram mechanism exerts an internal spring force
along its length
; and (iii) an external ground reaction force
acts on the foot (tip). Using the principle of virtual work, the total virtual work done by all these forces and torques (including inertial forces) must sum to zero for any set of virtual displacements
. To account for joint friction at the three actuated joints (
,
,
), we introduce friction torques
,
,
at the hip abduction, thigh, and shank joints, respectively. These torques act in opposition to the motion at each joint. Incorporating these into the principle of virtual work adds additional negative work terms for each DOF. Therefore, we can write the equilibrium of virtual work as:
Each term in Equation (
10) corresponds to the virtual work done by a force or torque: for example,
is the work by the hip actuator torque through the virtual rotation
,
is the work by the inertial force of link
j through its virtual COM displacement, etc. We now proceed to expand each term in detail.
The passive spring (of length
) is connected between the thigh and shank via the parallelogram linkage. Let
and
be the fixed link lengths from the spring’s mounting points to the hip and shank joints, respectively, and let
p be a constant geometric offset angle in the spring’s placement. The length
is a function of the joint angles
and
(and
p). In fact, from the law of cosines one can derive:
Differentiating this expression, the virtual change in spring length
is obtained as:
The spring’s virtual work contribution in Equation (
10) is then
Next we derive
for each link
j. For clarity, let us define shorthand notations
and
for any angle
x. All coordinates and vectors are expressed in the leg’s local coordinate frame
(attached at the leg’s base). The kinematic structure of the leg of Lunar Quadruped Robot is as follows: link 1 is the hip housing (rotating about the body with angle
about a nearly horizontal axis), link 2 is the thigh (rotating by
relative to the hip), link 3 is a rocker arm in the four-bar knee mechanism (rotating by
relative to the hip, in concert with the shank), link 4 is the connecting link of the four-bar (pinned between the thigh and rocker), and link 5 is the shank (which holds the foot). Each link
j has a known length or offset to its center of mass, denoted
(for
). Additionally, links 3 and 5 have small COM offset angles
and
, respectively (accounting for the fact that their centers of mass are not located exactly along the geometric link line). Links 1, 2, 4 have COMs on their symmetry axis so any offset angle for them is zero or neglected. Using the leg geometry, we can write the position vectors of each link’s COM in the
frame as functions of
,
,
. Differentiating those will give the virtual displacements
. We list the results here:
We must also account for the virtual rotations of each link’s COM. Each link’s small rotation can be expressed in terms of the virtual changes , , . Importantly, is a rotation about the leg’s x-axis, while and are rotations taking place in the plane that has been rotated by . A small rotation of link j by corresponds to an angular displacement about the x-axis (i.e., , , in coordinates). A small rotation by (of those links that depend on , namely links 2 and 4) corresponds to an angular displacement about an axis perpendicular to the x-axis. When , the rotation axis is along the z-axis of ; for a general , that axis is rotated by about x, yielding a unit direction vector in the frame. Similarly, a small rotation (for links 3 and 5 which depend on ) is about an axis initially along the z-axis (when ) and thus along after rotation by .
Using these observations, we can write the virtual rotation of each link’s COM as a 3-component vector. For example:
Finally, From Equation (
8), the virtual displacements of
can be given as
The above equations can be recognized as the dynamic equilibrium conditions (force/moment balance) for the
,
, and
motions, including all inertial and applied effects. While these expanded equations are correct, it is helpful to express them in a more compact form. We can identify in each equation the contributions from inertial forces (which will be associated with acceleration terms
), from velocity-dependent effects (Coriolis and centrifugal terms, associated with
products), from gravity and spring forces (potential forces), and from external forces. In fact, The above equations can be written in matrix-vector form as:
where,
is the symmetric mass/inertia matrix of the leg,
is the vector of Coriolis and centrifugal terms,
is the gravity and spring force generalized force vector (including weight of links as well as the passive spring force, which acts like an elastic potential), and
is the vector of generalized actuator forces (here, the three actuator torques
). Equation (
21) is the standard form of the leg’s equations of motion. In the absence of external contact force (
),
would equal the actual motor torques required to produce the motion
. When an external foot force
is present (such as during landing impact), its effect appears on the right-hand side of Equation (
21) as well, typically through an additional term
(where
J is the foot Jacobian). In other words, the actuator torques must also counteract the external force’s influence.