Hostname: page-component-cd9895bd7-fscjk Total loading time: 0 Render date: 2024-12-22T21:42:46.327Z Has data issue: false hasContentIssue false

A steerable robot walker driven by two actuators

Published online by Cambridge University Press:  01 December 2023

Jiaji Li
Affiliation:
Robotics and Automation Laboratory, University of California, Irvine, Irvine, CA 92697, USA
Chenhao Liu
Affiliation:
Department of Mechanical and Aerospace Engineering, University of California, San Diego, San Diego, CA 92093, USA
Ken Nguyen
Affiliation:
Robotics and Automation Laboratory, University of California, Irvine, Irvine, CA 92697, USA
J. Michael McCarthy*
Affiliation:
Robotics and Automation Laboratory, University of California, Irvine, Irvine, CA 92697, USA
*
Corresponding author: J. Michael McCarthy; Email: [email protected]
Rights & Permissions [Opens in a new window]

Abstract

This article describes a robot walker based on a new single degree-of-freedom six-bar leg mechanism that provides rectilinear, non-rotating, movement of the foot. The walker is statically stable and requires only two actuators, one for each side, to provide effective walking movement on a flat surface. We use Curvature Theory to design a four-bar linkage with a flat-sided coupler curve and then adds a translating link so that walker foot follows this coupler curve in rectilinear movement. A prototype walker was constructed that weighs 1.6 kg, is 180 mm tall, and travels at 162 mm/s. This is an innovative legged robot that has a simple reliable design.

Type
Research Article
Creative Commons
Creative Common License - CCCreative Common License - BY
This is an Open Access article, distributed under the terms of the Creative Commons Attribution licence (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted re-use, distribution and reproduction, provided the original article is properly cited.
Copyright
© The Author(s), 2023. Published by Cambridge University Press

1. Introduction

This paper presents the design and control of a new four-legged robot walker that is driven by two actuators to provide steerable movement on a horizontal surface. Each side of the walker has a leg system formed by two six-bar legs connected to a single DC motor-driven input crank. The leg systems on each of two sides are controlled independently to determine the forward, reverse and turning operation of the walker. See Fig. 1 which shows our Steerable Two Actuator Robot (STAR) walker.

The kinematic synthesis theory that we used to design leg mechanisms that have rectilinear, non-rotating, foot trajectories is presented in detail. This technique uses the differential geometry of point trajectories in a planar moving body to design a linkage with a flat-sided coupler curve. The resulting leg mechanism has a foot that moves in a rectilinear fashion, which means all points in the foot trace the flat-sided trajectory while in contact with the ground.

Our walker uses legs that have one degree-of-freedom (DoF), in contrast to the three degree-of-freedom legs used in most walkers, see Hirose [Reference Hirose1], Song and Waldron [Reference Song and Waldron2]. Also, see Buchanan et al. [Reference Buchanan, Bandyopadhyay, Bjelonic, Wellhausen, Hutter and Kottege3] and Yu et al. [Reference Yu, Gao and Deng4]. Our design uses two actuators for movement rather than as many as 12 actuators for a four-legged walker, which significantly reduces the weight and simplifies control.

2. Literature review

There are several walking robots that use only two actuators. Collins et al. [Reference Collins, Ruina, Tedrake and Wisse5] show that a bipedal robot can walk effectively with two actuators when combined with passive dynamics. Hoover et al. [Reference Hoover, Steltz and Fearing6] present an insect-sized hexapod robot that is driven by two actuators, one for forward movement and one for turning. Hoover et al. [Reference Hoover, Burden, Fu, Sastry and Fearing7] present a larger and faster hexapod also driven by two actuators. Recently, Islam et al. [Reference Islam, Carter, Yim, Kyle, Bergbreiter and Johnson8] show that a small bipedal passive dynamic walker with an extension actuator in each leg can provide steerable walking movement. In contrast, our walker is statically stable as it walks because of the design of its leg mechanisms.

Figure 1. The solid model and the prototype of our STAR (Steerable Two Actuator Robot) walker.

The leg mechanism for our walker is designed to guide the foot so that it translates without rotating, which means with two feet on the ground the walker is statically stable. The technique we apply to design this mechanism adapts kinematic synthesis of planar curves to the specific demands of walking machines. Cera and Penestri [Reference Cera and Pennestri9] describe the mathematical foundation for this synthesis process, which we present below using “instantaneous invariants” – also see Cera and Pennestri [Reference Cera and Pennestri10]. Instantaneous invariants were introduced by Veldkamp [Reference Veldkamp11] to simplify the study of the curvature of planar point trajectories. For recent discussions of instantaneous invariants, see Roth [Reference Roth12] and Figliolini and Lanni [Reference Fliglolini, Lanni, Gasparetto and Ceccarelli13].

The design of specialized robot leg mechanisms can be found as early as Shigley [Reference Shigley14], and Funabashi [Reference Funabashi, Ogawa, Gotoh and Kojima15, Reference Funabashi, Ogawa, Gotoh and Kojima16]. Shieh et al. [Reference Shieh, Tsai, Azarm and Tits17] present a variety of six-bar and eight-bar leg mechanisms combining a four-bar linkage with skew-pantograph and pantograph linkages. Liang et al. [Reference Liang, Ceccarelli and Takeda18] and Haldane et al. [Reference Haldane, Plecnik, Yim and Fearing19] have demonstrated the performance advantages of specialized leg mechanisms. Recent work on minimally actuated robot walkers with one or two actuators per leg and the use of a tail to balance the walker is presented by Saab et al. [Reference Saab, Yang and Ben-Tsvi20] and Liu and Ben-Tzvi [Reference Liu and Ben-Tzvi21]. Our leg mechanisms differ from these examples in that our robot has two six-bar legs on one side that are driven by a single motor and maintain static stability by using translating feet.

We compare our walker to six similarly sized walkers with regard to weight, speed, and degrees of freedom. In particular, we consider the omni-directional quadruped by Gu et al. [Reference Gu, Feng, Guo, Wan, Dai, Pan and Song22], who explore the potential of over-constrained linkages in leg design; the SQuRo quadruped robot by Shi et al. [Reference Shi, Gao, Wang, Quan, Jia, Huang and Fukuda23], which is a small-sized adaptable walker; the Cheetah-cub-S walker by Weinmeister et al. [Reference Weinmeister, Eckert, Witte and Ijspeert24], which features integrated spine-like structures; the NeRmo walker by Lucas et al. [Reference Lucas, Oota, Conradt and Knoll25], which is a modular bio-mimetic robot inspired by a mouse; and the WR-1 and WR-2 animaroid walkers by Ishii et al. [Reference Ishii, Komura, Masuda, Miyagishima, Takanishi, Okabayashi, Iida and Kimura26, Reference Ishii, Masuda, Miyagishima, Fumino, Takanishi, Laschi, Mazzolai, Mattoli and Dario27], which are designed to study social interaction with rodents. This comparison shows that the STAR walker’s emphasis on minimal actuation yields a generally stronger and faster walker.

3. Leg mechanism design

The kinematic synthesis of our leg mechanism proceeds in two steps. First, a four-bar linkage with a flat-sided coupler curve is designed using the differential properties of the trajectories generated by a planar moving body. This technique is known as “instantaneous position synthesis,” but for our purposes is better described as differential kinematic synthesis. The second step is to modify resulting linkage by adding two links in order to provide a foot that translates, without rotating, so that every point follows the same trajectory. A graphical version of this design procedure is presented in McCarthy [Reference McCarthy28].

In what follows, we present an analytical formulation of curvature theory which is the foundation for differential kinematic synthesis using instantaneous invariants. This formulation is not readily available in the current literature.

3.1. Curvature theory

The coupler of a four-bar linkage traces planar point trajectories that can be studied using Differential Geometry. See do Carmo [Reference do Carmo29] and Tapp [Reference Tapp30]. A fundamental result is that a planar curve is characterized by its curvature at every point along the curve. In kinematics of planar movement, curvature theory studies the curvature properties of all point trajectories in the body. Remarkably, information about these properties can identify a four-bar linkage and a coupler point with a flat-sided coupler curve, which are well-adapted for use in leg mechanisms.

3.1.1 Planar motion of a rigid body

Consider the rigid movement of a planar body, $M$ , relative to a fixed body $F$ , defined by the rotation angle $\phi$ measured between the $x$ axes of $M$ and $F$ and the translation vector $\mathbf{d}=(a, b)$ measured from the origin of $F$ to the origin of $M$ . If the parameters $\phi$ , $a$ and $b$ vary with time, then planar motion is the parameterized transformation of coordinates $\mathbf{p}$ of a point in $M$ to its trajectory $\mathbf{P}(t)$ in $F$ , given by,

(1) \begin{equation} \mathbf{P}(t)=\begin{Bmatrix} X(t) \\ Y(t) \\1 \end{Bmatrix}=\begin{bmatrix} \cos \phi (t) & -\sin \phi (t) & a(t) \\ \sin \phi (t) & \cos \phi (t) & b(t) \\ 0 & 0 & 1\end{bmatrix}\begin{Bmatrix}x \\ y \\ 1\end{Bmatrix}= \mathbf{D}(t)\mathbf{p}. \end{equation}

The $3\times 3$ homogeneous transform $\mathbf{D}$ is similar to the $4\times 4$ homogeneous transforms used in Robotics, McCarthy [Reference McCarthy31]. We use this $3\times 3$ matrix to simplify our derivations, however, we will drop the homogeneous coordinate 1 in $\mathbf{P}(t)$ and $\mathbf{p}$ when it is convenient.

The focus of curvature theory is on the geometric properties of point trajectories, therefore, rather than using time $t$ as a parameter, we use the rotation angle $\phi$ of the moving body. We reparameterize the components of the translation vector so we have $a(\phi )$ and $b(\phi )$ . Thus, the motion of a planar rigid body is given by the coordinate transformation,

(2) \begin{equation} \mathbf{P}(\phi )=\begin{Bmatrix} X(\phi ) \\ Y(\phi ) \\1 \end{Bmatrix}=\begin{bmatrix} \cos \phi & -\sin \phi & a(\phi ) \\ \sin \phi & \cos \phi & b(\phi ) \\ 0 & 0 & 1\end{bmatrix}\begin{Bmatrix}x \\ y \\ 1\end{Bmatrix}= \mathbf{D}(\phi )\mathbf{p}. \end{equation}

This equation defines the trajectory $\mathbf{P}(\phi )$ traced in a fixed frame $F$ by the point $\mathbf{p}$ in the moving frame $M$ . This can be viewed as a map of all the points of $M$ to trajectories in $F$ .

In order to study the differential properties of a trajectory $\mathbf{P}(\phi )$ , we introduce notation for the derivatives of $\mathbf{P}$ at the instant $\phi =0$ ,

(3) \begin{equation} \mathbf{P}(0) = \mathbf{P}_0,\quad \frac{d\mathbf{P}}{d\phi }(0) = \mathbf{P}_1, \quad \frac{d^2\mathbf{P}}{d\phi ^2}(0) = \mathbf{P}_2, \quad \frac{d^3\mathbf{P}}{d\phi ^3}(0) = \mathbf{P}_3, \quad \ldots \,\,. \end{equation}

We use this notation in the definition of the instantaneous invariants of a planar motion.

3.1.2 Instantaneous invariants

In every position of the moving body $M$ , there is a point $\mathbf{V}$ , known as the velocity pole or the instant center of rotation, that has zero velocity relative to the fixed body $F$ . The set of poles for the movement of $M$ relative to $F$ is called a centrode. For a specific position of the moving body, we choose the pole $\mathbf{V}$ as the origin of coordinates for both the fixed frame $F$ and moving frame $M$ , and the tangent to the centrode as the x-axis for what is known as the canonical coordinate system.

Using the canonical coordinate system, we obtain the Taylor series expansion of the motion near the reference position $\phi =0$ in the form,

(4) \begin{equation} \mathbf{D}(\phi )= I + \mathbf{D}_1\phi + \mathbf{D}_2\frac{\phi ^2}{2}+\mathbf{D}_3\frac{\phi ^3}{6} + \ldots \quad, \end{equation}

where the matrices $\mathbf{D}_i$ are calculated to be,

(5) \begin{equation} \mathbf{D}_1= \begin{bmatrix} 0 & -1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 0 \end{bmatrix},\quad \mathbf{D}_2= \begin{bmatrix} -1 & 0 & 0 \\ 0 & -1 & b_2 \\ 0 & 0 & 0 \end{bmatrix},\quad \mathbf{D}_3= \begin{bmatrix} 0 & 1 & a_3 \\ -1 & 0 & b_3 \\ 0 & 0 & 0 \end{bmatrix}. \end{equation}

This shows that every planar motion is defined by the set of constants $b_2$ , $a_3$ and $b_3$ to the third order, which are known as instantaneous invariants, Bottema and Roth [Reference Bottema and Roth32].

The trajectory $\mathbf{P}(\phi )$ in $F$ traced by a point $\mathbf{p}=(x,y)$ in the frame $M$ following the motion $\mathbf{D}(\phi )$ defined by (4) is given by,

(6) \begin{equation} \mathbf{P}(\phi )=\mathbf{p} + \mathbf{P}_1\phi + \mathbf{P}_2\frac{\phi ^2}{2} + \mathbf{P}_3\frac{\phi ^3}{6}+\ldots, \end{equation}

where

(7) \begin{equation} \mathbf{P}_1=\begin{Bmatrix} -y\\ x \end{Bmatrix},\quad \mathbf{P}_2=\begin{Bmatrix} -x\\ -y +b_2 \end{Bmatrix},\quad \mathbf{P}_3=\begin{Bmatrix} y +a_3\\ -x +b_3 \end{Bmatrix}. \end{equation}

This equation can be viewed as defining all of the trajectories $\mathbf{P}(\phi )$ associated with all points $\mathbf{p}=(x,y)$ in the moving plane $M$ .

We study the differential properties of all of the trajectories in the moving body in order to obtain the inflection circle, the Euler-Savary equation, and the cubic of stationary curvature.

3.1.3 Differential properties

The local properties of each trajectory in the moving body are studied using the unit tangent $\mathbf{T}$ and unit normal $\mathbf{N}$ vectors described in do Carmo [Reference do Carmo29] and Tapp [Reference Tapp30]. Using (6), we can compute these vectors to be,

(8) \begin{equation} \mathbf{T}= \frac{\mathbf{P}^\prime }{|\mathbf{P}^{\prime }|}=\frac{1}{(x^2+y^2)^{1/2}}\begin{Bmatrix}-y \\ x\end{Bmatrix},\quad \mbox{and}\quad \mathbf{N}=\mathbf{T}^\perp = \frac{1}{(x^2+y^2)^{1/2}}\begin{Bmatrix}-x \\ -y\end{Bmatrix}, \end{equation}

where $\mathbf{T}^\perp$ is $\mathbf{T}$ rotated $\pi/2$ counterclockwise. The prime in these equations is the traditional notation for derivatives with respect to the curve parameter, in our case $\phi$ .

The curvature $\kappa$ of a trajectory $\mathbf{P}(\phi )$ is calculated using the formula from differential geometry,

(9) \begin{equation} \kappa = \frac{\mathbf{P}^{\prime }\times \mathbf{P}^{\prime \prime }}{(\mathbf{P}^{\prime }\cdot \mathbf{P}^{\prime })^{3/2}} = \frac{x^2+y^2-b_2y}{(x^2+y^2)^{3/2}}. \end{equation}

This equation shows that the set of points $\mathbf{p}=(x, y)$ in the moving body with trajectories $\mathbf{P}(\phi )$ having zero curvature, that is with $\kappa =0$ at the instant $\phi =0$ , satisfy the equation,

(10) \begin{equation} \mathcal{I}\,{:}\,x^2+y^2-b_2y = 0, \end{equation}

which defines a circle, known as the inflection circle, Fig. 2.

Figure 2. The canonical coordinate system simplifies the equations that define tangent $\mathbf{T}_A$ and normal $\mathbf{N}_A$ vectors for a trajectory $\mathbf{A}$ , as well as for its the center of curvature $\mathbf{C}_A$ .

The center of curvature $\mathbf{C}_P$ for each trajectory $\mathbf{P}(\phi )$ is defined by the formula,

(11) \begin{equation} \mathbf{C}_P = \mathbf{p} + \frac{1}{\kappa }\mathbf{N}, \end{equation}

where $\rho =1/\kappa$ is the radius of curvature. The center of curvature defines a circle with radius $\rho$ that fits the trajectory to the second order. Substitute (8) and (9) into the above equation to obtain,

(12) \begin{equation} \mathbf{C}_P = \begin{Bmatrix} x \\ y \end{Bmatrix} + \frac{x^2+y^2}{x^2+y^2-b_2y}\begin{Bmatrix}-x \\ -y\end{Bmatrix}. \end{equation}

This definition of the center of curvature (12) takes a simpler form using polar coordinates in the canonical frame and yields the Euler-Savary equation, Uicker et al. [Reference Uicker, Pennock and Shigley33].

3.1.4 Euler-Savary equation

Consider a ray through a point $\mathbf{p}$ and the origin $\mathbf{V}$ of the canonical coordinate system, and introduce polar coordinates, so $\mathbf{p}=(R\cos \theta, R\sin \theta )$ . Recall that $\mathbf{V}$ is the instant center of rotation for the moving body, which means that the tangent vector $\mathbf{T}$ of the trajectory $\mathbf{P}(\phi )$ is perpendicular to this ray, and the normal vector $\mathbf{N}$ is along this ray. Using these polar coordinates, the curvature $\kappa$ is given by,

(13) \begin{equation} \kappa = \frac{R-b_2\sin \theta }{R^2}. \end{equation}

The center of curvature can be computed to be,

(14) \begin{equation} \mathbf{C}_P= R\begin{Bmatrix} \cos \theta \\ \sin \theta \end{Bmatrix} - \frac{R^2}{R-b_2\sin \theta }\begin{Bmatrix} \cos \theta \\ \sin \theta \end{Bmatrix}, \end{equation}

where it becomes clear that $\mathbf{C}_P$ lies on the ray through $\mathbf{p}$ at the angle $\theta$ and at the distance $R_C=R-\rho$ from the origin.

This ray intersects the inflection circle at the distance $R_I$ given by

(15) \begin{equation} R_I = b_2\sin \theta. \end{equation}

Substitute $R_I$ into the formula for the radius of curvature $\rho =R-R_C$ to obtain,

(16) \begin{equation} R-R_C=\frac{R^2}{R-R_I}\quad \mbox{or}\quad R^2=(R-R_C)(R-R_I), \end{equation}

which is known as the Euler-Savary equation, Uicker et al. [Reference Uicker, Pennock and Shigley33].

The Euler-Savary equation provides a formula for the location of the center of curvature $\mathbf{C}_A$ associated with the trajectory of a point $\mathbf{A}$ using the radial distances from the velocity pole to the point $\mathbf{A}$ and to the point of intersection $\mathbf{J}_A$ of this ray with the inflection circle. Repeat this calculation to obtain the center of curvature $\mathbf{C}_B$ for a second point $\mathbf{B}$ in order to obtain the four-bar linkage $\mathbf{C}_A\mathbf{ABC}_B$ that has a coupler motion that matches the moving plane to the second order, Fig. 3.

Figure 3. The Euler-Savary equation relates the radial distance to the center of curvature $R_{C,A}$ to the radial distance $R_A$ and the radial distance $R_{I,A}$ to the intersection with the inflection circle.

3.1.5 Ball’s point

We now consider the rate of change of the curvature of trajectories in the moving plane. Compute the derivative of the formula for curvature $\kappa$ in (9) to obtain,

(17) \begin{equation} \frac{d\kappa }{d\phi } = \frac{(\mathbf{P}^{\prime }\times \mathbf{P}^{\prime \prime \prime }) (\mathbf{P}^{\prime }\cdot \mathbf{P}^{\prime }) -3(\mathbf{P}^{\prime }\times \mathbf{P}^{\prime \prime })(\mathbf{P}^{\prime }\cdot \mathbf{P}^{\prime \prime })}{(\mathbf{P}^{\prime} \cdot \mathbf{P}^\prime )^{5/2}}. \end{equation}

Substitute (6) into this equation to obtain a formula for the rate of change of curvature in the reference position $\phi =0$ for every point $\mathbf{p}=(x,y)$ in the moving plane,

(18) \begin{equation} \kappa _1 = \frac{-(x^2+y^2)(a_3x+b_3y)-3b_2x(x^2+y^2-b_2y)}{(x^2+y^2)^{5/2}}. \end{equation}

The points with trajectories having a zero rate of change of curvature, that is with $\kappa _1=0$ , maintain the same curvature to the third order. These trajectories are said to have stationary curvature, and are defined by points that lie on the cubic curve,

(19) \begin{equation} \mathcal{C}: (x^2+y^2)(a_3x+b_3y)+3b_2x(x^2+y^2-b_2y)=0, \end{equation}

known as the cubic of stationary curvature.

The intersection of the cubic of stationary curvature and the inflection circle defines a point in the moving body that follows a straight line to the third order known as Ball’s point, Fig. 4.

Figure 4. Points on the cubic of stationary curvature follow circular trajectories to the third order, and Ball’s point follows a straight-line trajectory to the third order.

3.1.6 Differential kinematic synthesis

Kinematic synthesis of a four-bar linkage for movement of a body $M$ near a reference position seeks point trajectories $\mathbf{A}$ and $\mathbf{B}$ that lie on circles to the third order. These points lie on the cubic of stationary curvature and are used as the moving pivots of a four-bar linkage.

The centers of curvature $\mathbf{C}_A$ and $\mathbf{C}_B$ for these trajectories are found using the Euler-Savary equation, which become the fixed pivots for bars connecting the moving body $M$ to the ground frame $F$ . The result is a four-bar linkage $\mathbf{C}_A\mathbf{A}\mathbf{B}\mathbf{C}_B$ with a coupler line $\mathbf{AB}$ that follows the movement of $M$ to the third order.

Finally, we use Ball’s point to obtain a flat-sided coupler curve that we use for the foot trajectory of our leg mechanism. See Fig. 5.

Figure 5. For a choice of moving pivots $\mathbf{A}$ and $\mathbf{B}$ , the centers of curvature $\mathbf{C}_A$ and $\mathbf{C}_B$ form the fixed pivots. The resulting linkage $\mathbf{C}_A\mathbf{ABC}_B$ guides Ball’s point $\mathbf{P}$ along a flat-sided coupler curve.

3.2. Construct a translating link

Once a coupler curve is selected for the leg mechanism, two bars can be added to provide a translating link that will serve as the foot. The translating link is attached to the coupler point so that every point in the foot follows the same curve. The result is a six-bar leg mechanism with a translating foot. This construction follows Dijksman [Reference Dijksman34].

Figure 6 shows a four-bar linkage $\mathbf{OABC}$ with the coupler point $\mathbf{P}$ . The resulting coupler triangle $\triangle{\mathbf{ABP}}$ defines the angles $\alpha =\angle \mathbf{BAP}$ and $\beta =\angle \mathbf{ABP}$ . Let the point $\mathbf{D}$ on the input link $\mathbf{OA}$ define a triangle $\triangle \mathbf{AOD}$ similar to the coupler triangle. Then lengths of the segments $\mathbf{AP}$ and $\mathbf{AD}$ define a constant, $k$ , given by,

(20) \begin{equation} k=\frac{|\mathbf{AP}|}{|\mathbf{AB}|}=\frac{|\mathbf{AD}|}{|\mathbf{AO}|}. \end{equation}

The addition of two links $\mathbf{DE}$ and $\mathbf{EP}$ with lengths,

(21) \begin{equation} |\mathbf{DE}|=k\,|\mathbf{OC}|,\quad \mbox{and}\quad |\mathbf{EP}|=k\,|\mathbf{CB}|, \end{equation}

yields a four-bar linkage $\mathbf{DAPE}$ that is proportional to the original linkage $\mathbf{OABC}$ , with equal coupler angles,

(22) \begin{equation} \phi =\angle \mathbf{OAB}=\angle \mathbf{DAP}. \end{equation}

As the coupler angle $\phi$ varies, the vertex angles of the two quadrilaterals remain the same throughout the movement. As a result, the segment $\mathbf{DE}$ maintains the angle $\alpha$ relative to $\mathbf{OC}$ , which shows that $\mathbf{DE}$ does not rotate as it moves.

Figure 6. Left: Define the quadrilateral $\mathbf{DAPE}$ proportional to the original four-bar $\mathbf{OABC}$ . The angles $\alpha$ and $\beta$ are constant and the coupler angle $\phi$ is the same for both quadrilaterals. The segment $\mathbf{DF}$ remains parallel to $\mathbf{OC}$ , and $\mathbf{DE}$ does not rotate. Right: Attach $\mathbf{DG}$ and $\mathbf{GP}$ to complete a parallelogram with $\mathbf{DE}$ and $\mathbf{EP}$ to obtain a non-rotating foot $\mathbf{PG}$ that follows the coupler curve traced by $\mathbf{P}$ .

In order to obtain a link that translates following the coupler curve of the $\mathbf{P}$ , we attach links $\mathbf{DG}$ and $\mathbf{GP}$ that complete the parallelogram with $\mathbf{DE}$ and $\mathbf{EP}$ , Fig. 6. Thus, the segment $\mathbf{PG}$ moves with $\mathbf{P}$ without rotating. The segments $\mathbf{DE}$ and $\mathbf{EP}$ are not physical links, so the leg mechanism becomes a six-bar linkage.

4. Leg system of the STAR walker

The design theory described in the previous section yields a six-bar linkage that guides a foot with a rectilinear, non-rotating, flat-sided trajectory. Two of these linkages are mounted on one side of the chassis of our STAR walker driven by a single actuated input crank to form a 10-bar leg system. See Fig. 7. The dimensions of the links are provided in Table I. The chassis of the walker is shaped like an inverted “U” with the vertical sides serving as the mounting structure for each leg system. The battery and electronics are mounted on the horizontal section of the chassis. It is useful to compare the STAR leg system to those of J. C. Klann’s Walking Device [Reference Klann35] and Chebyshev’s Plantigrade Walker [Reference Artobolevsky and Levitsky36].

Table I. The length (mm) of the links of the STAR walker leg mechanism.

Figure 7. Left: The STAR walker six-bar leg mechanism. Links $\mathbf{DG}$ and $\mathbf{PG}$ are added to $\mathbf{OABC}$ to obtain a non-rotating foot. Center: Two leg mechanisms on one side form a leg system with one actuated input crank. Right: Front view shows the right and left leg systems.

4.1. Klann’s walking device

Like the STAR walker, the Klann Walking Device is also constructed using six-bar leg mechanisms. Two of these leg mechanisms and one side of the chassis form a leg system, which forms a 10-bar linkage with a single actuated input. See Fig. 8. The legs each provide single point of ground contact and the leg rotates around this point during a step. In contrast, the entire foot of the STAR walker maintains ground contact during a step.

Figure 8. Left: The six-bar leg mechanism of the Klann Walking Device [Reference Klann35] generates a single point foot trajectory. Right: Two leg mechanisms with a single drive crank form a leg system on one side of the chassis. The leg provides single point contact and rotates during a step.

4.2. Chebyshev’s plantigrade walker

Chebyshev’s leg mechanism is a four-bar linkage that has the shape of the Greek letter lambda and is often called a Lambda linkage [Reference Chebyshev37]. Chebyshev use this mechanism to drive two feet of a walking machine in rectilinear, non-rotating, fashion that is called plantigrade, which refers to walking on the soles of the foot. See Fig. 9. Chebyshev’s Plantigrade Walker can be compared to one side of our STAR walker because it consists of two non-rotating feet driven by a single crank. In order to achieve this movement, Chebyshev connects four Lambda linkages, two for each foot. The result is a 14-bar leg system with a single input, which has more moving parts than our STAR walker.

Figure 9. Left: Chebyshev’s Lambda linkage is a four-bar linkage with a flat-sided coupler curve [Reference Chebyshev37]. Right: Chebyshev’s Plantigrade Walker has two rectilinear moving feet, one formed by items 2 and 3 and the other by items 1 and 4. The two feet follow the coupler curves of four Lambda linkages connected to a single crank [Reference Artobolevsky and Levitsky36] to provide non-rotating contact with the ground.

5. STAR walker prototype

The components of the chassis of the STAR walker are laser cut from basswood. The links of the leg mechanism, the gears and spacers are 3D printed using PLA. See Fig. 10. Other hardware includes 3 mm joint bearings, hubs, shafts, screws and nuts.

Figure 10. The links, gears and spacers are fabricated by 3D printing PLA.

The electronic schematic of the walker is shown in Fig. 11. The walker is driven by two 12V 56:1 DC motors (JGB37-520-C) with attached Hall-effect encoders (am-2816a) connected to an L298N mounted on an Arduino Mega. A BlueTooth (DX-BT24) interface allows control of the motor through a cellphone application. A 24V 3000 Amp Hour battery supplies power to the system.

Figure 11. The Arduino Mega 2560 board collects control signals and encoder data, and sends a voltage command to the two DC motors.

This BlueTooth application provides a convenient graphical user interface to provide motion commands to the STAR walker. We set specific commands for forward, backward, left-turn, right-turn, self-rotation and stop, as well as speed increments. The result is the walker can be controlled wirelessly.

6. Walker control system

The controller for the drive motors of our walker uses proportional, differential and integral operations on the difference between the target speed and actual speed of the drive motors, to obtain rapid convergence to the target value, see Fig. 12. See Ogata [Reference Ogata38] and Nise [Reference Nise39]. The speed of each motor is computed from the position information returned by the encoders. We use 50 ms cycle time to determine the rotational speed of each motor. The coefficients, $K_p$ , $K_i$ and $K_d$ , in the controller, are obtained by measuring the transient and steady-state performance of the walker. The values of these parameters were obtained experimentally by repeatedly tuning the response of the system.

Figure 12. The speed PID controller block diagram.

The performance of the two walker motors under speed control is shown in Fig. 13. The four images represent the motor driving strategies of forward, backward, left-turn and right-turn motion, respectively.

Figure 13. Motor speed under speed controller in (a) forward motion, (b) backward motion, (c) left-turn motion and (d) right-turn motion. Blue curve represents the right motor and red curve represents the left motor. All the data are collected without loads.

7. Results

The STAR walker is 190 mm long, 320 mm wide and 180 mm tall, and weighs 1.6 kg. Experiments were conducted to evaluate the performance of this walker for various movements. They consist of (a) an acceleration run over a 1 m track, (b) cornering around a one-quarter segment of a 1 m radius circle, (c) speed of a rotational movement about the z-axis of the walker and (d) evaluation of the vertical movement of the chassis.

The walker completed the acceleration run in 6.1 s, which is a speed of 160 mm/s (0.5 ft/s). The walker completed the quarter circle in 11.7 s, which corresponds to a speed of 134 mm/s (0.4 ft/s). This corresponds to a lateral acceleration in turning of 200 $\textrm{mm}/\textrm{s}^2$ , which is approximately 0.02 g. See Fig. 14.

Figure 14. The STAR walker achieves a speed of 160 mm/s in a straight line, and 134 mm/s in a 1 m turn.

A comparison of the properties of our STAR walker with six other quadruped walking robots is shown in Fig. 15. The STAR walker includes a 350 g battery and two 170 g DC motors, therefore, it is the heaviest of these robots. However, STAR’s leg mechanisms provide a significant reduction in the number of DoF of the robot, which reduces the complexity of the robot’s control system and provides the fastest turning speed.

Figure 15. Comparison of weight, walking speed, turning speed and Dof among different quadruped walking robots.

Comparing STAR to the Omni-directional quadruped introduced by Gu et al. [Reference Gu, Feng, Guo, Wan, Dai, Pan and Song22], despite carrying a battery, STAR showcases similar weight and dimensions but outperforms in both walking and turning speeds. Likewise, when compared to Shi et al.’s [Reference Shi, Gao, Wang, Quan, Jia, Huang and Fukuda23] quadruped robot “SQuRo,” which is smaller and lighter, STAR exhibits superior walking and turning speeds. Although Cheetah-Cub-S, introduced by Weinmeister et al. [Reference Weinmeister, Eckert, Witte and Ijspeert24], reports a faster walking speed, STAR excels in turning speed. A similar pattern emerges when comparing STAR to NeRmo-V4 by Lucas et al. [Reference Lucas, Oota, Conradt and Knoll25]. Additionally, when compared to Ishii’s animaroid robots, WR-1 [Reference Ishii, Komura, Masuda, Miyagishima, Takanishi, Okabayashi, Iida and Kimura26] and WR-2 [Reference Ishii, Masuda, Miyagishima, Fumino, Takanishi, Laschi, Mazzolai, Mattoli and Dario27], which have many DoF and relatively small sizes, STAR has an advantage in control complexity (DoF) while maintaining faster walking and turning speeds.

In-place rotation was achieved by driving both legs to move in opposite directions and was measured using an IMU (JY60, WitMotion, Shenzhen, Guangdong, China), Fig. 16. The time for a full turn was obtained as 7.2 s, which is an angular velocity of 50°/s. The roll and pitch angles of the robot during a forward walking movement were measured using IMU data, see Fig. 17. The STAR walker shows a range of fluctuation at 10° for roll angle and 3° for pitch angle during forward motion, and 11° and 6° during a turning motion. In comparison, the Omni-directional quadruped [Reference Gu, Feng, Guo, Wan, Dai, Pan and Song22], reports a fluctuation of 4° for roll angle and 6° for pitch angle during forward motion, and 13° and 10° for pitch angle during rotating motion. This indicates that the STAR walker maintains a higher degree of stability during its walking motions.

Figure 16. The STAR walker can rotate in place at a speed of 50°/s.

Figure 17. Roll and pitch angle of forward motion and self-rotating motion.

The vertical movement of the walker chassis was evaluated by tracing the trajectory of the chassis top right corner to determine the maximum variation. See Fig. 18 which shows this trajectory as well as the trajectory of the same point in a SolidWorks simulation. The peak to peak maximum of this vertical movement for the prototype was measured to be 30 mm. The variation of 15 mm is 8.1% of the 185 mm height of STAR walker. This is three times the 11 mm peak-to-peak vertical movement measured in the SolidWorks simulation. The difference appears to arise from manufacturing tolerances in the leg mechanism. During motion, the walker’s center of mass moves within the support polygon provided by the rectilinear, non-rotating, moving feet. This combines with manufacturing tolerances in the leg systems to cause variation in the orientation of the chassis that is not seen in the simulation. We will address this in future research.

Figure 18. Comparison of the vertical chassis movement of the SolidWorks simulation to the performance of the STAR walker. The prototype shows a vertical movement that is three times that of the simulation.

8. Conclusion

In this paper, we have presented the design and control of a novel four-legged robot walker (the STAR walker) based on a one-degree-of-freedom six-bar leg mechanism. The STAR walker is statically stable and driven by only two actuators, one for each side, providing rectilinear movement of the foot on a flat surface. The goal of our design is to reduce the complexity and weight of the robot while maintaining effective locomotion capabilities.

Our results show that the robot walker achieved a speed of 162 mm/s in a straight line, 134 mm/s in cornering (0.02 g lateral acceleration), and was able to rotate about its axis at 50°/s. During these movements, the vertical displacement of the chassis was measured to be 30 mm.

For future applications, compared to other walking robots of similar size, the STAR walker has the fewer degrees of freedom and larger load capacity. The reduced number of actuators reduces energy consumption, which makes the STAR walker suitable for long-duration detection and transportation tasks. The fewer number of actuators also leads to easier control and lower manufacturing costs, making it possible for STAR to be used as a module in large-scale robot clusters. This makes it ideal for logistics warehousing, environmental monitoring and rescue tasks.

Future work will focus on improvement to the design and control of the robot walker to enhance its performance over uneven terrain, and obstacle negotiation. This research opens new opportunities for developing advanced robot walkers with improved mobility and versatility for various real-world applications.

Author contributions

Ken Nguyen and J. M. McCarthy originated the design for the leg mechanism of a two-legged wheeled walker. Chenhao Liu and J. M. McCarthy further developed this design. Chenhao Liu and Jiaji Li achieved the four-legged version. All four authors contributed to writing this article.

Financial support

This research received no specific grant from any funding agency, commercial or not-for-profit sectors.

Competing interests

The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential Competing interest.

Ethical approval

Our study does not include experimentation with vertebrates.

Supplementary material

To view supplementary material for this article, please visit https://doi.org/10.1017/S0263574723001558

References

Hirose, S., “A study of design and control of a quadruped walking vehicle,” Int. J. Robot. Res. 3(2), 113133 (1984).CrossRefGoogle Scholar
Song, S. M. and Waldron, K. J., Machines that Walk: The Adaptive Suspension Vehicle (The MIT Press, Cambridge, MA, 1988).Google Scholar
Buchanan, R., Bandyopadhyay, T., Bjelonic, M., Wellhausen, L., Hutter, M. and Kottege, N., “Walking posture adaptation for legged robot navigation in confined spaces,” IEEE Robot. Autom. Lett. 4(2), 21482155 (2019).CrossRefGoogle Scholar
Yu, H., Gao, H. and Deng, Z., “Enhancing adaptability with local reactive behaviors for hexapod walking robot via sensory feedback integrated central pattern generator,” Robot. Auton. Syst. 124, 103401 (2020).CrossRefGoogle Scholar
Collins, S., Ruina, A., Tedrake, R. and Wisse, M., “Efficient bipedal robots based on passive-dynamic walkers,” Science 307(5712), 10821085 (2005).CrossRefGoogle ScholarPubMed
Hoover, A. M., Steltz, E. and Fearing, R. S., “RoACH: An Autonomous 2.4g Crawling Hexapod Robot,” In: 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, Nice, France (2008).Google Scholar
Hoover, A. M., Burden, S., Fu, X.-Y., Sastry, S. S. and Fearing, R. S., “Bio-Inspired Design and Dynamic Maneuverability of a Minimally Actuated Six-Legged Robot,” In: Proceedings of the 2010 3rd IEEE RAS and EMBS International Conference on Biomedical Robotics and Biomechatronics, Tokyo, Japan (2010).Google Scholar
Islam, S., Carter, K., Yim, J., Kyle, J., Bergbreiter, S. and Johnson, A. M., “Scalable Minimally Actuated Leg Extension Bipedal Walker Based on 3D Passive Dynamics,” In: 2022 IEEE International Conference on Robotics and Automation, Philadelphia, PA, USA (2022).Google Scholar
Cera, M. and Pennestri, E., “The mechanical generation of planar curves by means of point trajectories, line and circle envelopes: A unified treatment of the classic and generalized Burmester problem,” Mech. Mach. Theory 142, 103580 (2019).CrossRefGoogle Scholar
Cera, M. and Pennestri, E., Engineering Kinematics: Curvature Theory of Plane Motion (1963) (2023). ISBN: 9798374816860 (available from Amazon).Google Scholar
Veldkamp, G. R., Curvature Theory in Plane Kinematics (J. B. Wolters, Groningen, 1963) (available through the repository TU Delft).Google Scholar
Roth, B., “On the advantages of instantaneous invariants and geometric kinematics,” Mech. Mach. Theory 89, 513 (2015).CrossRefGoogle Scholar
Fliglolini, G. and Lanni, C., “Geometric Loci for the Kinematic Analysis of Planar Mechanisms via the Instantaneous Geometric Invariants,” In: MEDER 2018, MMS (Gasparetto, A. and Ceccarelli, M., eds.), vol. 66 (Springer, Cham, 2019) pp. 184192.Google Scholar
Shigley, J. E., Mechanics of Walking Vehicles: A Feasibility Study (UMRI Project, University of Michigan, 1960).CrossRefGoogle Scholar
Funabashi, H., Ogawa, K., Gotoh, Y. and Kojima, F., “Synthesis of leg-mechanisms of biped walking machines: Part I, synthesis of ankle-path-generator,” Bull. JSME 28(237), 537543 (1985).CrossRefGoogle Scholar
Funabashi, H., Ogawa, K., Gotoh, Y. and Kojima, F., “Synthesis of leg-mechanisms of biped walking machines: Part II, synthesis of foot-driving mechanism,” Bull. JSME 28(237), 544549 (1985).CrossRefGoogle Scholar
Shieh, W. B., Tsai, L. W., Azarm, S. and Tits, A. L., “A new class of six-bar mechanisms with symmetrical coupler curves,” J. Mech. Des. 120(1), 150153 (1996).CrossRefGoogle Scholar
Liang, C., Ceccarelli, M. and Takeda, Y., “Operation analysis of a Chebyshev-Pantograph leg mechanism for a single DOF biped robot,” Front. Mech. Eng. 7(4), 357370 (2012).CrossRefGoogle Scholar
Haldane, D. W., Plecnik, M. M., Yim, J. K. and Fearing, R. S., “Robotic vertical jumping agility via series-elastic power modulation,” Sci. Robot. 1(1), eaag2048 (2016).CrossRefGoogle ScholarPubMed
Saab, W., Yang, J. and Ben-Tsvi, P., “Modeling and Control of an Articulated Tail for Maneuvering a Reduced Degree of Freedom Legged Robot,” In: 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain (2018).Google Scholar
Liu, Y. and Ben-Tzvi, P., “Systematic Development of a Novel, Dynamic, Reduced Complexity Quadruped Robot Platform for Robotic Tail Research,” In: 2022 IEEE International Conference on Robotics and Automation, Philadelphia, PA, USA (2022).Google Scholar
Gu, Y., Feng, S., Guo, Y., Wan, F., Dai, J., Pan, J. and Song, C., “Overconstrained coaxial design of robotic legs with omni-directional locomotion,” Mech. Mach. Theory 176, 105018 (2022).CrossRefGoogle Scholar
Shi, Q., Gao, J., Wang, S., Quan, X., Jia, G., Huang, Q. and Fukuda, T., “Development of a small-sized quadruped robotic rat capable of multimodal motions,” IEEE Trans. Robot. 38(5), 30273043 (2022).CrossRefGoogle Scholar
Weinmeister, K., Eckert, P., Witte, H. and Ijspeert, A.-J., “Cheetah-cub-S: Steering of a Quadruped Robot Using Trunk Motion,” In: 2015 IEEE International Symposium on Safety, Security, and Rescue Robotics (SSRR) (IEEE, 2015).CrossRefGoogle Scholar
Lucas, P., Oota, S., Conradt, J. and Knoll, A., “Development of the Neurorobotic Mouse,” In: 2019 IEEE International Conference on Cyborg and Bionic Systems (CBS) (IEEE, 2019).CrossRefGoogle Scholar
Ishii, H., Komura, A., Masuda, Y., Miyagishima, S., Takanishi, A., Okabayashi, S., Iida, N. and Kimura, H., “Development of Quadruped Animaroid for Social Interaction Test with Rats and Mice,” In: 2009 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (IEEE, 2009).CrossRefGoogle Scholar
Ishii, H., Masuda, Y., Miyagishima, S., Fumino, S., Takanishi, A., Laschi, C., Mazzolai, B., Mattoli, V. and Dario, P., “Design and Development of Biomimetic Quadruped Robot for Behavior Studies of Rats and Mice,” In: 2009 Annual International Conference of the IEEE Engineering in Medicine and Biology Society (IEEE, 2009).CrossRefGoogle Scholar
McCarthy, J. M., Kinematic Synthesis of Mechanisms: A Project Based Approach (MDA Press, Brampton, 2019). ISBN: 0978518055.Google Scholar
do Carmo, M. P., Differential Geometry of Curves and Surfaces (Prentice-Hall, Englewood Cliffs, NJ, 1976).Google Scholar
Tapp, K., Differential Geometry of Curves and Surfaces (Springer, Cham, 2016).CrossRefGoogle Scholar
McCarthy, J. M., Introduction to Theoretical Kinematics (MDA Press, Brampton, 2018) (available through Amazon).Google Scholar
Bottema, O. and Roth, B., Theoretical Kinematics (North Holland, Amsterdam, 1979) (Dover Publications, New York, 2012).Google Scholar
Uicker, J. J., Pennock, G. P. and Shigley, J. E., Theory of Machines and Mechanisms, 5th edition (Oxford University Press, New York, 2017) 950pp.Google Scholar
Dijksman, E. A., Motion Geometry of Mechanisms (Cambridge University Press, Cambridge, 1976).Google Scholar
Klann, J. C., U.S. Patent 6,260,862, “Walking Device,” awarded Jul 17, 2001.Google Scholar
Artobolevsky, I. I. and Levitsky, N. I., “Models of Mechanisms of P. L. Tchebyshev,” In: The Complete Works of P. L. Tchebyshev. Vol. IV. Theory of Mechanisms. – Moscow-Leningrad: AS USSR (1948) pp. 227228. https://en.tcheb.ru/plantigrade-machine/ (Russian).Google Scholar
Chebyshev, P. L., “On Transformation of Rotary Movement into Movement Along Some Lines Using Joined Systems,” In: The Complete Works of P. L. Tchebyshev. Vol. IV. Theory of Mechanisms. – Moscow-Leningrad: AS USSR (1948) pp. 161166. https://en.tcheb.ru/plantigrade-machine/ (Russian).Google Scholar
Ogata, K., Modern Control Engineering, vol. 5 (Prentice hall, Upper Saddle River, NJ, 2010).Google Scholar
Nise, N. S., Control Systems Engineering (John Wiley and Sons, New York, 2020).Google Scholar
Figure 0

Figure 1. The solid model and the prototype of our STAR (Steerable Two Actuator Robot) walker.

Figure 1

Figure 2. The canonical coordinate system simplifies the equations that define tangent $\mathbf{T}_A$ and normal $\mathbf{N}_A$ vectors for a trajectory $\mathbf{A}$, as well as for its the center of curvature $\mathbf{C}_A$.

Figure 2

Figure 3. The Euler-Savary equation relates the radial distance to the center of curvature $R_{C,A}$ to the radial distance $R_A$ and the radial distance $R_{I,A}$ to the intersection with the inflection circle.

Figure 3

Figure 4. Points on the cubic of stationary curvature follow circular trajectories to the third order, and Ball’s point follows a straight-line trajectory to the third order.

Figure 4

Figure 5. For a choice of moving pivots $\mathbf{A}$ and $\mathbf{B}$, the centers of curvature $\mathbf{C}_A$ and $\mathbf{C}_B$ form the fixed pivots. The resulting linkage $\mathbf{C}_A\mathbf{ABC}_B$ guides Ball’s point $\mathbf{P}$ along a flat-sided coupler curve.

Figure 5

Figure 6. Left: Define the quadrilateral $\mathbf{DAPE}$ proportional to the original four-bar $\mathbf{OABC}$. The angles $\alpha$ and $\beta$ are constant and the coupler angle $\phi$ is the same for both quadrilaterals. The segment $\mathbf{DF}$ remains parallel to $\mathbf{OC}$, and $\mathbf{DE}$ does not rotate. Right: Attach $\mathbf{DG}$ and $\mathbf{GP}$ to complete a parallelogram with $\mathbf{DE}$ and $\mathbf{EP}$ to obtain a non-rotating foot $\mathbf{PG}$ that follows the coupler curve traced by $\mathbf{P}$.

Figure 6

Table I. The length (mm) of the links of the STAR walker leg mechanism.

Figure 7

Figure 7. Left: The STAR walker six-bar leg mechanism. Links $\mathbf{DG}$ and $\mathbf{PG}$ are added to $\mathbf{OABC}$ to obtain a non-rotating foot. Center: Two leg mechanisms on one side form a leg system with one actuated input crank. Right: Front view shows the right and left leg systems.

Figure 8

Figure 8. Left: The six-bar leg mechanism of the Klann Walking Device [35] generates a single point foot trajectory. Right: Two leg mechanisms with a single drive crank form a leg system on one side of the chassis. The leg provides single point contact and rotates during a step.

Figure 9

Figure 9. Left: Chebyshev’s Lambda linkage is a four-bar linkage with a flat-sided coupler curve [37]. Right: Chebyshev’s Plantigrade Walker has two rectilinear moving feet, one formed by items 2 and 3 and the other by items 1 and 4. The two feet follow the coupler curves of four Lambda linkages connected to a single crank [36] to provide non-rotating contact with the ground.

Figure 10

Figure 10. The links, gears and spacers are fabricated by 3D printing PLA.

Figure 11

Figure 11. The Arduino Mega 2560 board collects control signals and encoder data, and sends a voltage command to the two DC motors.

Figure 12

Figure 12. The speed PID controller block diagram.

Figure 13

Figure 13. Motor speed under speed controller in (a) forward motion, (b) backward motion, (c) left-turn motion and (d) right-turn motion. Blue curve represents the right motor and red curve represents the left motor. All the data are collected without loads.

Figure 14

Figure 14. The STAR walker achieves a speed of 160 mm/s in a straight line, and 134 mm/s in a 1 m turn.

Figure 15

Figure 15. Comparison of weight, walking speed, turning speed and Dof among different quadruped walking robots.

Figure 16

Figure 16. The STAR walker can rotate in place at a speed of 50°/s.

Figure 17

Figure 17. Roll and pitch angle of forward motion and self-rotating motion.

Figure 18

Figure 18. Comparison of the vertical chassis movement of the SolidWorks simulation to the performance of the STAR walker. The prototype shows a vertical movement that is three times that of the simulation.

Li et al. supplementary material

Li et al. supplementary material

Download Li et al. supplementary material(Video)
Video 43.3 MB