Skip to main content
  • Research Article
  • Open access
  • Published:

Sidewinding locomotion of flatworm-like mesh robot WORMESH-II


WORMESH-II, which is the second prototype in the WORMESH series, is inspired by a flatten and soft-bodied fatworm, and its uniqueness is the use of multiple travelling waves for locomotion. In this paper, the sidewinding locomotions for WORMESH-II are talked about. This is because sidewinding is one of the most effective ways to traverse sandy terrain. The mathematical model of the sidewinding locomotion kinematics of WORMESH-II explains how synchronous multiple sidewinding waves can be used to control the movement of the robot effectively. Unlike WORMESH’s pedal-wave locomotion, sidewinding gaits allow the robot to be manoeuvred in any direction without changing the joint sequence. Relative to the wave propagation direction, velocity in the longitudinal direction is dependent on the vertical component of sidewinding travelling waves. Moreover, velocity in the transverse direction depends on the horizontal component of sidewinding travelling waves. The velocity in the longitudinal direction becomes zero when the phase shift of the travelling waves equals \(\pi \) rad. The angular velocity around the instantaneous centre of rotation depends on the wave amplitude of the horizontal component of the sidewinding travelling wave along the kinematic chains, and the turning radius is proportional to the amplitude gradient along the kinematic chains. The dynamic simulation of WORMESH-II and testing with the WORMESH-II prototype confirmed the proposed method, which was based on the metamathematical explanation of locomotion.


Limbless locomotion is one of interesting locomotion methods developed based on the locomotion of several biological creatures. Snake [1], worm [2], inchworm [3], and caterpillar [4] are the most popular examples for limbless locomotion robots. Intrinsic narrow construction of these robots uses for inspecting pipes and narrow spaces. The mobility of such a robot system is simply controlled by rhythmic body motion base locomotion gaits. The majority of these robots are comprised of an open kinematic chain composed of serially interconnected links. These robots create locomotion by employing a single body wave along the kinematic chain. However, locomotion using multiple body waves has been hardly discussed.

Fig. 1
figure 1

Multi-wave locomotion of flatworm [7]

Fig. 2
figure 2

Concept of the flatworm-like pedal wave locomotory robot [7]

Fig. 3
figure 3

Joint mechanism between two consecutive CMs. a Conceptual design of joint system between tow CMs. b CAD design of joint mechanism

Our previous publications in [5, 6] introduced a new robot concept called WORMESH as an inspiration of flatworm’s locomotion (Fig. 1). Flatworms use two travelling waves along two sides of their body when swimming in the water and crawling on the surface (Fig. 1). Thus, WORMESH was designed to use multiple locomotion gaits with multiple travelling waves. For example, a robot having one dimensional cord-like structure similar to a snake propagates one body wave to generate its motion. On the contrary, WORMESH has two dimensional cloth-like structure, and multiple travelling waves were used to generate locomotion [5]. Figure 2 shows the concept of WORMESH. Use of flexible mesh-like structure in WORMESH leads to crawl on the surface, walk on uneven surface, and transport and manipulate an object. In [7] describes the joint system implementation and pedal wave locomotion of the second prototype WORMESH-II.

When it comes to research on flattened robots that look like cloth, for example, SheetBot [8] can be mentioned. In SheetBot, which aimed to establish autonomous decentralised control, there was no discussion of the theory of movement via travelling waves, and the mechanical model developed was a one-dimensional model similar to that of conventional snake-like robots. Additionally, the flexible sheet-based Loco-Sheet [9] was designed to traverse discretely elevated terrains such as stairs, but its locomotion performance was limited due to its structure and number of degrees of freedom (DOF). In [10], the movement of a 2D travelling wave on the piezoelectric plate was discussed. It utilised four piezoelectric motors that generated travelling waves by inducing resonance on the attached flat plate, nonetheless its design restricted its mobility in flat surfaces. In [11], a sheet-like soft robot inspired by snail mobility/motion was built. This robot system functioned as a conveyor that can transfer an object. However, it could generate pedal waves only in a single direction and could not generate multiple pedal waves independently, limiting the system’s adaptability.

In accordance with the simulation and experiment results of [6, 7], the pedal wave locomotion was not continuous with the \(3\times 3\) module formation, and robot movement resembled the anchor-pull and anchor-push motion of the inchworm [12]. Also, there was a relative motion between grounding points and ground. Hence, this kind of locomotion behaviour is not acceptable for sandy or gravel terrains because the relative motion at the grounding points would lead to excessive slipping, and the front area of the robot would possibly be stuck by accumulated sand or gravel. Naturally, sidewinding gait is one of the best solutions for such a condition. Thus, this work has studied and developed multiple sidewinding locomotion for WORMESH-II. Sidewinding of a snake robot has one kinematic chain, and the motion of each link depends on nearby links that are located on the same sidewinding travelling wave. When the robot has multiple sidewinding waves, and each wave is interconnected by linkage mechanisms motion of links, that is also affected by other sidewinding travelling waves. This paper mathematically explains the kinematics of sidewinding locomotion of WORMESH-II including the results of simulations, and the experiment with WORMESH-II’s prototype.

The rest of this paper is organized as follows. Section II explains the construction of WORMESH-II, the second prototype. The kinematic model of multiple sidewinding locomotion of WORMESH-II is presented in Section III. Section IV discusses the simulation and experiment with prototype of WORMESH-II, and Section IV and V are discussion and conclusion, respectively.

Fig. 4
figure 4

Kinematics of the joint mechanism. a Pitch motion. b Yaw motion

Prototype of WORMESH-II

Mechanical design of WORMESH-II

WORMESH-II was developed based on the modular concept, which connects cubic modules according to the mesh formation [7]. It has two types of modules; control module (CM), and joint module (JM). A JM is placed in between two consecutive CMs (Fig. 3). As shown in Fig. 3a, four universal joints (\(\hbox {T}_{1}-\hbox {Yp}_{{1}}\), \(\hbox {Y}_{1}-\hbox {P}_{{1}}\), \(\hbox {Y}_{2}-\hbox {P}_{{2}}\) and \(\hbox {Yp}_{2}-\hbox {T}_{{2}}\)) create the connection between two consecutive CMs. Two universal joints having a pitch and yaw axis (\(\hbox {Y}_{i}-\hbox {P}_{{i}}\) (\(\hbox {i}=1,2\))) are oppositely placed each other at both ends of JM. The yaw axis of the universal joints, \(\hbox {Y}_{1}-\hbox {P}_{{1}}\) and \(\hbox {Y}_{2}-\hbox {P}_{{2}}\), are passively rotated, and these axis are indirectly driven by two link mechanisms installed on both sides of the universal joint rotating co-axially with the pitch axis of the universal joint (Fig. 3a). Each pitch joint (\(\hbox {P}_{{1}}\) and \(\hbox {P}_{{2}}\)) has two pitch links at each end, and only one is fixed with the pitch gear. Interconnecting links interconnect each left and right pitch links. Two ball joint mechanisms connect both pitch links with the relevant yaw joint (\(\hbox {Y}_{{i}}\)). Therefore, this mechanism, in which the rotation of the universal joint is the output, is a differential mechanism with two input links and two motors that control the universal joint’s position. When the motor rotates one pitch-link to a certain angle, the other pitch link on the same side of the next pitch axis rotates at the same time by almost the same angle by interlocking with the motion of the pair of links. The yaw axis (\(\hbox {Yp}_{{i}}\); \(i=1,2\)), a part of each universal joint next to CM, is connected to CM via a roll axis (\(\hbox {T}_{{i}}\); \(i=1,2\)) rotation mechanism with a spring-loaded restoring force. Introducing a passive joint in the roll axis improves the kinematic mechanism’s flexibility and reduces the excessive load in pitch joints.

The mechanical implementation of joint system is shown in Fig. 3b. This joint mechanism can position shaft, \(\hbox {T}_{{1}}\) and \(\hbox {T}_{{2}}\), in three-dimensional space by controlling DC motors, M1 and M2. When both motors are rotating in the same direction with the same phase, the ends of shaft, \(\hbox {T}_{{1}}\) and \(\hbox {T}_{{2}}\), move an arc in the pitch direction (Fig. 4a). Likewise, when the phase different (\(\Delta \)) between M1 and M2 is equal to \(\pi \), the trajectory of \(\hbox {T}_{{1}}\) and \(\hbox {T}_{{2}}\) is on an arc in the yaw direction Fig. 4b. \(\hbox {T}_{{1}}\) and \(\hbox {T}_{{2}}\) follow a circular and an elliptical trajectory on an orthogonal plane to the roll axis for \(\Delta = \pi /2\) and \(0< \Delta <\pi /2\), respectively.

System integration

WORMESH-II was designed as a self-sustain system. Each CM has a 12V DC power supply unit, BD6221 DC motor controller units, and a M3HiBot microcontroller unit. All microcontrollers are interconnected by CAN bus system.

Fig. 5
figure 5

Joint control system digram

Figure 5 shows the system diagram of the low level control system. Rotation angle of motor shaft, \(\phi _{ji}\), of each JM is individually controlled by the dedicated PID position controllers. According to the output of the PID controller, the microcontroller sends PWM signals to BD6221 DC motor controller. Each motors is interconnected by potentiometer, and the position signal sends to the respective microcontroller. Rotation angle of motor shaft \(\phi _{ji}\) and \(\Delta _{ji}\) are the inputs for the control system which controls the trajectory of the joint mechanism. All joint position signals are synchronised by interconnected CAN bus system.

Sidewinding locomotion of WORMESH-II

Sidewinding gait for the snake robots was generated by moving its serial kinematic chain in a spherical trajectory [13,14,15,16]. Thereby, this motion was made of as summation of two travelling waves propagating on vertical and horizontal planes of the robot’s body [16]. Unlike snake robots, the locomotion hypothesis of WORMESH is based on the multiple travelling waves [5]. When interconnected parallel kinematic chains propagate travelling waves, the motion of individual links is affected by the motion of adjacent links. This can be decreased by synchronizing the motion of adjacent links. Hence, parallel, and synchronous sidewinding travelling waves were proposed to create the sidewinding locomotion.

Fig. 6
figure 6

Summation of vertical and horizontal waves for the sidewinding locomotion of WORMESH-II. Blue colour wave is generated by pitch joints (\(\hbox {P}_{{ji1}}\) and \(\hbox {P}_{{ji2}}\)) on the vertical plane, and orange colour wave is generated by yaw joints (\(\hbox {Y}_{{ji1}}\) and \(\hbox {Y}_{{ji2}}\)) on the horizontal plane, Trajectories of CM shows by red colour curves on ZX plane

Figure 6 shows how the summation of vertical and horizontal travelling waves propagates on WORMESH-II for sidewinding locomotion. The vertical travelling wave is generated by pitch joints whilst the horizontal travelling wave is by yaw joint in the corresponding kinematic chains. The XY plane shows three horizontal waves propagating along the kinematic chains parallel to the Y direction, and vertical waves are shown in blue line on the YZ plane. For an effective locomotion, the phase different between vertical and horizontal waves, \(\sigma = \pi /2\). The shape of trajectory of cuboid modules is shown in the ZX vertical plane.

$$\begin{aligned} \begin{aligned} \phi _{vti}&= A_{v} \sin \left\{ \omega _{w} t + \beta \left( i-1 \right) \right\} \quad (i = 1, 2, \cdots , n)\\ \phi _{hti}&= A_{h} \sin \left\{ \omega _{w} t + \sigma +\beta \left( i-1 \right) \right\} \quad (i = 1, 2, \cdots , n) \end{aligned} \end{aligned}$$
Fig. 7
figure 7

a Kinematic model of WORMESH for multiple sidewinding locomotion b Relationship between mowing distances, wavelength and amplitudes of side-winding wave locomotion

Both vertical and horizontal waves are created by controlling the relative angle between two consecutive CMs based on Eq. 1 [6]. The relative angles between consecutive CMs in pitch and yaw directions are denoted by \(\phi _{vti}\) and \(\phi _{hti}\), respectively. Temporal frequencies of the waves, phase shift, and phase different between both waves are respectively denoted by \(\omega _{w},\beta \), and \(\sigma \). Amplitude of the vertical wave is denoted by \(A_{v}\), and the amplitude of the horizontal wave is denoted by \(A_{h}\).

Kinematics of multiple sidewinding locomotion

Supposed that WORMESH-II moves on the horizontal plane, \(\hbox {X}_{{g}}\hbox {Y}_{{g}}\), as presented in Fig. 7a. Three synchronous sidewinding travelling waves were propagated along the active kinematic chains. Assumed that wave amplitude changes along the kinetic chains. Thus, according to Eq. 1, wave parameters of two JMs along each kinematic chain are \(A_{v1}\),\(A_{h1}\),\(\omega _{w}\) and \(A_{v2}\),\(A_{h2}\),\(\omega _{w}\), respectively for the left and the right sides (Fig. 7). The local frame, xy, is located at the centre of mass (COM). Each kinematic chain has two grounding points, \(\hbox {P}_{{i}}\) (\(\hbox {i}=1,2,..,6\)), and \(v_{i}\)(i=1,2,..,6) is the velocity at grounding points relatively to the local frame xy.

At t=t, robot location (COM) on the \(X_{g}Y_{g}\) frame is (XY), and linear and angular velocities relative to the xy frame are \(v=[v_{x},v_{y}]^{T}\) and \(\omega \), respectively. The state vector which describes the generalized coordinates is \(q=[X,Y,\theta ]^{T}\), and the generalized velocity vector is denoted by \({\dot{q}}=[{\dot{X}},{\dot{Y}},{\dot{\theta }}]^{T}\). Hence, Eq. 2 denotes the free body kinematics of WORMESH-II with respective to the COM.

$$\begin{aligned}{} & {} \begin{bmatrix} {\dot{X}} \\ {\dot{Y}} \\ {\dot{\theta }} \end{bmatrix} = \begin{bmatrix} cos\theta &{} -sin\theta &{} 0 \\ sin\theta &{} cos\theta &{} 0 \\ 0 &{} 0 &{} 1 \end{bmatrix} \begin{bmatrix} v_{x} \\ v_{y} \\ \omega \end{bmatrix} \end{aligned}$$
$$\begin{aligned}{} & {} v_{iy}=f_{1}(A_{v},\omega _{w}, \beta ) \end{aligned}$$
$$\begin{aligned}{} & {} v_{ix}=f_{2}(A_{h},\omega _{w}, \beta ) \end{aligned}$$

The synchronous vertical waves generate movements along the wave propagation direction similar to the pedal wave locomotion of WORMESH-II [5, 6]. As a result, \(\omega _{w}\) and \(\beta \) are the same for each travelling wave. Figure 7b shows relationship between mowing distances wavelength and amplitudes of side-winding wave locomotion. Assuming no skids at the ground-contact sites and \(\lambda \) is the wavelength, \(L_{T}\): total length of the kinematic chain, k is the number of complete wave shapes and L is the is the length of the arc of one wave which is equal to \(\frac{L_{T}}{k}\), the displacement of a unit wave cycle produced by a vertically travelling wave \(\Delta x_{y}\) = \(L-\lambda \) for \(k\ge 2\). The \(\lambda \) approximately negatively proportional (an inverse relation) to \({A_{v}}\) because \(L_{T}\) is constant. Therefore, when \(A_{v}\) increased, \(\lambda \) decreased. Hence velocity component of \(v_{i}\) along the y direction, \(v_{_iy}\), can be represented by Eq. 3. The displacement of a unit wave cycle produced by a horizontal travelling wave \(\Delta x_{x}\) proportional to the \(A_{h}\) [17]. Therefore velocity component of \(v_{i}\) along the x direction, \(v_{_ix}\), can be represented by Eq. 4. Function \(f_{1}\) and \(f_{2}\) are non-linear proportional function. The relationship between \(v_{iv}, v_{iy}\) and \(\beta \) is non-linear and effect on locomotion directly related with the number of links hence, the relationship between linear velocity components and wave parameters (\(A_{v}\), \(A_{h}\) and \(\omega _{w}\)) can be described as follows. The \(v_{iy}\) and \(v_{ix}\) are proportional and linear to \(\omega _{w}\) because \(\frac{d\Delta X_{x,y}}{dt} \propto \omega _{w}\), assuming that there is no slippage at the \(\hbox {P}_{{i}}\) and that the overall linear displacement per locomotion cycle is in the directions xy denoted by \(\Delta x_{x,y}\). Therefore \(\Delta x_{y}\) increased with \(A_{v}\) and \(v_{y}\) is increased with \(A_{v}\). Considering the circular relative motion between modules on ZX plane in Fig. 6, the \(\Delta x_{x}\) should be equal to maximum relative distance between \(\hbox {P}_{{i}}\) and \(\hbox {P}_{i+1}\) \((i=1,3,5)\) in x direction and \(\Delta x_{x}\) direction is increased with \(A_{h}\). Hence \(v_{x}\) is increased with \(A_{h}\). The \(v=[v_{x},v_{y}]^{T}\) is the result of the \(v_{i}\) of each ground contact point.

Reference [18] explained the multiple travelling wave locomotion of WORMESH based on the instantaneous centre of rotation (ICR) model of skid-steering mobile robots (SSMR). Similar method can be used to explain the multiple sidewinding locomotion kinematics of WORMESH. If robot moves in a curve at a given time instant, the angular velocity around the ICR is \(\omega \). The vector \(d_{i}(d_{ix},d_{iy})\) \((i=1,2,\ldots ,6)\) and \(d_{c}(d_{cx},d_{cy})\) denote the radius from grounding points to ICR and COM to ICR,respectively. The \(d_{1y}\), \(d_{3y}\), and \(d_{5y}\), are equal to \(d_{cy}-b\) and \(d_{2y}\), \(d_{4y}\), and \(d_{6y}\), are equal to \(d_{cy}+a\) (Fig. 7a). Similarly \(d_{1x}\), and \(d_{2x}\) is equal to \(d_{cx}+c\) and \(d_{5x}\), and \(d_{6x}\) is equal to \(c-d_{cx}\). Therefore, following equation explains the relationship between \(\omega , d_{c},\) and \(v_{i}\).

$$\begin{aligned} \begin{aligned} \omega&= \frac{v_{x}}{d_{cy}}= \frac{v_{1x}}{d_{cy}-b}= \frac{v_{3x}}{d_{cy}-b}= \frac{v_{5x}}{d_{cy}-b}\\&= \frac{v_{2x}}{d_{cy}+a}= \frac{v_{4x}}{d_{cy}+a}= \frac{v_{4x}}{d_{cy}+a}\\&= \frac{v_{1y}}{d_{cx}+c}= \frac{v_{2y}}{d_{cx}+c}= \frac{-v_{5y}}{c-d_{cx}}= \frac{-v_{6y}}{c-d_{cx}} \\&=\frac{v_{3y}}{d_{cx}}= \frac{v_{4y}}{d_{cx}}= \frac{v_{y}}{d_{cx}} \end{aligned} \end{aligned}$$

Assumed that no relative motion between modules in the kinematic chains along the x direction, thereby linear velocities of the left and right sides (\(V_{L}\) and \(V_{R}\)) of the robot can be denoted as in Eq. 6.

$$\begin{aligned} \begin{aligned} v_{1x}&=v_{3x}=v_{5x}=V_{L}\\ v_{2x}&=v_{4x}=v_{6x}=V_{R} \end{aligned} \end{aligned}$$

Considering the robot movement in y direction, linear displacement of each point of the kinematic chain should be equal for a unit locomotion cycle. Therefore, the average velocity along the kinematic chain is expressed as:

$$\begin{aligned} \begin{aligned} v_{1y}&=v_{2y}=V_{F}\\ v_{3y}&=v_{4y}=V_{M}\\ v_{5y}&=v_{6y}=V_{B} \end{aligned} \end{aligned}$$

The average velocities of \(\hbox {P}_{{1}}\) and \(\hbox {P}_{{2}}\) in y direction are indicated by \(V_{F}\). Similarly velocities at \(\hbox {P}_{{3}}\), \(\hbox {P}_{{4}}\) and \(\hbox {P}_{{5}}\), \(\hbox {P}_{{6}}\) are denoted by \(V_{M}\) and \(V_{B}\), respectively.

Equation 8 is derived as a combination of Eq. 5, 6, and 7.

$$\begin{aligned} \begin{bmatrix} V_{L} \\ V_{R} \\ V_{F} \\ V_{M} \\ V_{B} \end{bmatrix} = \begin{bmatrix}1 &{} 0 &{} -b\\ 1 &{} 0 &{} +a \\ 0 &{} 1 &{} c \\ 0 &{} 1 &{} 0 \\ 0 &{} 1 &{} -c\end{bmatrix} \begin{bmatrix} v_{x} \\ v_{y} \\ \omega \end{bmatrix} \end{aligned}$$

Moreover, \(v_{x},v_{y}\) and \(\omega \) can be described as in Eq. 9. using Eq. 8.

$$\begin{aligned} \begin{bmatrix} v_{x} \\ v_{y} \\ \omega \end{bmatrix} = \begin{bmatrix}\frac{aV_{L}+bV_{R}}{a+b} \\ \frac{V_{F}+V_{M}+V_{B}}{3} \\ \frac{ V_{R}-V_{L}}{a+b} \end{bmatrix} \end{aligned}$$

Locomotion kinematics of WORMESH-II for multiple sidewinding wave locomotion can be described by Eq. 2 and Eq. 9. Velocity component, \(v_{x}\) depends on \(V_{L}\) and \(V_{R}\), moreover, \(V_{L}\) and \(V_{R}\) which are the functions of horizontal travelling wave in Eq. 4. Angular velocity, \(\omega \), around the ICR is proportional to \((V_{R}-V_{L})\). All three sidewinding travelling waves are synchronous, therefore, each vertical and horizontal wave has equal \(\omega _{w}\) and \(\beta \). However, wave amplitude, \(A_{h}\), of the left and right sides of the joint can respectively control \(V_{L}\) and \(V_{R}\). Hence, \((V_{R}-V_{L})\) is proportional to \(A_{h1}-A_{h2}\) (Fig. 7). Velocity component along the wave propagation direction, \(v_{y}\), relies on \(V_{F},V_{M}\) and \(V_{B}\) that are generated by the vertical travelling wave in Eq. 3. During the sidewinding locomotion, parallel joints in each kinematic chains along the x direction should have the same wave amplitude because parallel modules move in the same size and shape trajectory with time. Hence, wave parameters of the vertical travelling wave of each kinematic chain are kept at equal values, and horizontal travelling waves become the controlling parameter of the locomotion.


The simplified kinematic model of the joint mechanism of WORMESH-II is shown in Fig. 8, and all passive joints (\(\hbox {T}_{i}-\hbox {Yp}_{{i}}\), Fig. 3) are not illustrated. Yellow and green square shapes denote CM (\(\hbox {M}_{{ij}}\)) and JM, respectively. Yaw and pitch revolute joints in x direction are denoted by \(\hbox {YX}_{{ij}}\) and \(\hbox {PX}_{{ij}}\) respectively. Similarly, revolute joints in y direction are \(\hbox {YY}_{{ij}}\) and \(\hbox {PY}_{{ij}}\) (\(i=1,2,..,6\) j=1,2). As described in sidewinding locomotion concept in Fig. 6, horizontal travelling waves are generated by \(\hbox {YX}_{{ij}}\) and \(\hbox {YY}_{{ij}}\) joints while vertical travelling waves are generated by \(\hbox {PX}_{{ij}}\) and \(\hbox {PY}_{{ij}}\) joints. If robot move in X direction kinematic chains \(\hbox {M}_{11}-\hbox {M}_{21}-\hbox {M}_{{33}}\), \(\hbox {M}_{12}-\hbox {M}_{22}-\hbox {M}_{{32}}\) and \(\hbox {M}_{13}-\hbox {M}_{23}-\hbox {M}_{{33}}\) activate. If robot moves in Y direction, kinematic chains \(\hbox {M}_{11}-\hbox {M}_{12}-\hbox {M}_{{13}}\), \(\hbox {M}_{21}-\hbox {M}_{22}-\hbox {M}_{{23}}\) and \(\hbox {M}_{31}-\hbox {M}_{32}-\hbox {M}_{{33}}\) activate. Table 1 shows gait parameters for translational locomotion for simulations. The intended travelling direction is X, lateral direction of the wave propagation direction.

Fig. 8
figure 8

Joint kinematics models of WORMESH-II’s simulation model [7]

Fig. 9
figure 9

Sidewinding locomotion of WORMESH robot in simulation. a Robot movement in simulation for travelling wave parameters are \(A_{v}=\pi /40,A_{h1} = A_{h2}=\pi /60,\beta =1.5\pi ,\omega =0.5\pi \). b Pose of kinematic chain \(\hbox {M}_{21}-\hbox {M}_{{23}}\) on XY plane, travelling wave parameters are \(A_{v}=\pi /40,A_{h}=\pi /60,\beta =1.5\pi ,\omega =0.5\pi \). c Pose of kinematic chain \(\hbox {M}_{21}-\hbox {M}_{{23}}\) on ZX plane, travelling wave parameters are \(A_{v}=\pi /40,A_{h}=\pi /60,\beta =1.5\pi ,\omega =0.5\pi \). d Robot movement in simulation for travelling wave parameters are \(A_{v}=\pi /40,A_{h1} =\pi /60, A_{h2} =\pi /64,\beta =1.5\pi ,\omega =0.5\pi \). e Robot movement in simulation for travelling wave parameters are \(A_{v}=\pi /40,A_{h1} = A_{h2} =\pi /60,\beta =\pi ,\omega =0.5\pi \). f Effect of the travelling wave parameters on travelling direction

Table 1 Gait parameters of simulation for translational locomotion

Figure 9 shows simulation result of the sidewinding locomotion of WORMESH-II. Locomotion of equal \(A_{v}\) for all \(\hbox {PY}_{{ij}}\) joints and equal \(A_{h}\) for all \(\hbox {YY}_{{ij}}\) joints are shown in Fig. 9a. The travelling waves parameters are \(A_{v}=\pi /40\), \(A_{h}=\pi /60\), \(\beta =1.5\pi \) and \(\omega =0.5\pi \).

WORMESH-II moved sideways like an omnidirectional motion as a result of the combination of vertical and horizontal travelling waves (Eq. 9). Movement in the wave propagation direction is created by the vertical travelling wave, and the combination of yaw and pitch motion moves each module in a circular trajectory relative to each other, which creates the motion in the transverse direction.

According to Eq. 9, \(\omega \) supposed to be zero because \(A_{1h}=A_{2h}\) along the kinematic chains. However, actual trajectory of centre of geometry (COG) is a curved as in Fig. 9a ( COM\(\approx \)COG, for low wave amplitude). Figure. 9b shows poses of kinematic chain \(\hbox {M}_{{12}}\)-\(\hbox {M}_{{22}}\)-\(\hbox {M}_{{32}}\) on the horizontal plane for a locomotion cycle. The travelling distance of both ends of the kinematic chain was not equal. Travelling distances of \(\hbox {M}_{{32}}\) and \(\hbox {M}_{{12}}\) per locomotion cycle were 24.8 mm and 22.2 mm, respectively. The pose of kinematic chain, \(\hbox {M}_{{12}}\)-\(\hbox {M}_{{22}}\)-\(\hbox {M}_{{32}}\), on ZX plane is shown in Fig. 9c. The horizontal travelling distance (\(\hbox {x}_{{l}}\)) per unit wave cycle is proportional to \(A_{h}\). Based on Eq. 9, trajectory can be controlled by changing amplitude of horizontal travelling wave. Figure  9d shows the locomotion of WORMESH-II for with different \(A_{h}\), where joint \(\hbox {YY}_{{1j}}\),\(\hbox {YY}_{{3j}}\) and \(\hbox {YY}_{{5j}}\) (\(j=1,2\)) had \(A_{h}=\pi /60\), joint \(\hbox {YY}_{{2j}}\),\(\hbox {YY}_{{4j}}\) and \(\hbox {YY}_{{6j}}\) (\(j=1,2\)) had \(A_{h}=\pi /64\). For different \(A_{h}\) along the kinematic chain, ends of \(\hbox {M}_{3i} (i=1,2,3)\) move relatively lower distance than the first simulation, and robot’s COG moves in a straight line. Figure 9e shows locomotion of WORMESH-II for wave parameters of \(A_{v}=\pi /40,A_{h}=\pi /60,\omega =0.5\pi \) and \(\beta =\pi \). The robot movement was transverse to the wave propagation direction without omnidirectional movement. The overall locomotion parameter map, which explains how sidewinding locomotion of WORMESH-II is controlled by kinematic chains, \(\hbox {M}_{11}-\hbox {M}_{21}-\hbox {M}_{{33}}\), \(\hbox {M}_{12}-\hbox {M}_{22}-\hbox {M}_{{32}}\) and \(\hbox {M}_{13}-\hbox {M}_{23}-\hbox {M}_{{33}}\), is shown in Fig. 9f.

  • When \(A_{h}=0\) and \(\beta \ne \pi \), WORMESH-II moves along the wave propagation direction, and locomotion is pure pedal wave locomotion [6].

  • When \(\beta =\pi \) and \(A_{v},A_{h}\ne 0\), WORMESH-II moves perpendicular to the wave propagation direction. Further, WORMESH-II moves in X\(>0\) direction and X\(<0\) direction for \(\sigma =1.5\pi \) and \(\sigma =0.5\pi \), respectively.

  • In omnidirectional motion, WORMESH-II’s moving direction can be regulated using \(A_{h}\) and \(A_{v}\). When \(A_{h}\) increases, \(v_{x}\) also increases, thereby, robot moves more towards the transverse direction.

Fig. 10
figure 10

WORMESH-II, The Isotropic module composition (IMC)

Fig. 11
figure 11

Translational locomotion of WORMESH-II with IMC configuration ( \(A_{v}=0.24\pi \), \(\Delta =0.25\pi \),\(A_{h}=0.12\pi \), \(\beta =\pi \), and \(\omega =0.05\pi \))

Experiment with prototype of WORMESH-II

The prototype of WORMESH-II are shown in Fig. 10 [6]. Based on the simulated result of sidewinding locomotion, WORMESH-II was tested for translational, turning, and omnidirectional motions using the prototype. This WORMESH-II configuration is known as isotropic module composition (IMC), and each kinematic chain contains two JMs and three CMs. As per the implemented joint mechanism, both yaw and pitch joints of two interconnected active universal joints can be controlled by two motors. Like the pedal wave locomotion, vertical travelling wave propagated along the active kinematic chains by controlling the oscillation signal of motors \(M_{i}\) and \(M_{i+1}\) according to Eq. 1. Each pitch and yaw joint of JMs was controlled separately in simulation using appropriate oscillation signals. In the prototype, two motors of individual JMs contorted the pitch and yaw motion of two universal joints, taking advantage of the phase difference \(\Delta \) between M1 and M2 of each joint module, which is a beneficial feature of the joint mechanism. For the joint mechanism \(\sigma =\pi /2\). According to the joint mechanism in Fig. 3b pure vertical travelling wave was created as in Eq. 1 when \(A_{v}=A\ne 0\) and \(\Delta =0\) (A= amplitude of DC motor oscillation signal/4.8). When \(\Delta =\pi \), it was a pure horizontal travelling wave and \(A_{h}=A\) and \(A_{v}=0\). When \(0<\Delta \le \pi /2\), it generates both vertical and horizontal waves. For \(0<\Delta \le \pi /2\): \(A_{h}=\Delta A_{v}/0.5\pi \).

Table 2 Gait parameters of translational locomotion for IMC (\(\sigma =0.5\pi \))
Fig. 12
figure 12

Trajectory of WORMESH-II of translational locomotion (\(A_{v}=0.24\pi \), \(\Delta =0.25\pi \), \(A_{h}=0.12\pi \), \(\beta =\pi \), and \(\omega =0.05\pi \))

Table 3 Gait parameters of omnidirectional locomotion for IMC (\(\sigma =0.5\pi \))

Translational motion

This experiment was expected to move WORMESH-II in a direction perpendicular to the wave propagation direction. Table 2 shows the gait parameters of the translational locomotion of WORMESH-II. The first column includes activated kinematic chains corresponding to Fig. 10, and the remaining columns indicate the names of relevant joint modules (JMs) and their wave parameters as shown in Eq. 1. The movements of the prototypes, which is shown in Fig. 11, for travelling wave parameters of \(A_{v}=0.24\pi \), \(\Delta =0.25\pi \), \(A_{h}=0.12\pi \), \(\beta =\pi \), \(\omega =0.05\pi \), were similar to the simulation (Fig. 9e). The vertical wave did not create locomotion along the wave propagation direction because \(\beta =\pi \), thereby, movement was only generated in transverse direction. Trajectories on the XY plane of CMs,\(\hbox {M}_{{11}}\), \(\hbox {M}_{{13}}\), \(\hbox {M}_{{31}}\), \(\hbox {M}_{{33}}\) and \(\hbox {M}_{{22}}\) of IMC is shown in Fig. 12. The IMC of WORMESH moved straight towards the x direction. The average locomotion speed of WORMESH-II was 2.5\(mms^{-1}\).

Fig. 13
figure 13

Omnidirectional locomotion of WORMESH-II with IMC configuration ( \(A_{v}=0.24\pi \), \(\Delta =0.25\pi \),\(A_{h}=0.12\pi \), \(\beta =1.5\pi \), and \(\omega =0.05\pi \))

Fig. 14
figure 14

Trajectory of WORMESH-II of omnidirectional locomotion (\(A_{v}=0.24\pi \), \(\Delta =0.25\pi \),\(A_{h}=0.12\pi \), \(\beta =1.5\pi \), and \(\omega =0.05\pi \))

Fig. 15
figure 15

Steering locomotion of WORMESH-II with IMC configuration, travelling wave parameters are \(A_{v}=0.24\pi \), \(\Delta _{1}=0.4\pi \), \(\Delta _{2}=0.1\pi ,\) \( \beta =1.5\pi ,\) \( A_{h1}=0.192\pi , \) \(A_{h2}=0.048\pi , \) and \(\omega =0.5\pi \)

Fig. 16
figure 16

Trajectory of WORMESH-II, steering locomotion Fig. 15, travelling wave parameters are \(A_{v}=0.24\pi \), \(\Delta _{1}=0.4\pi \), \(\Delta _{2}=0.1\pi ,\) \( \beta =1.5\pi ,\) \( A_{h1}=0.192\pi , \) \(A_{h2}=0.048\pi , \) and \(\omega =0.5\pi \)

Omnidirectional locomotion

The experiment was expected to enable WORMESH-II to move both in the wave propagation direction and perpendicular to the wave propagation direction. Table 3 presents the gait parameters of the omnidirectional locomotion. The first column includes activated kinematic chains corresponding to Fig. 10, and the remaining columns indicate the names of relevant joint modules (JMs) and their wave parameters as shown in Eq. 1. In the experiment, travelling wave parameters were \(A_{v}=0.24\pi \), \(\Delta =0.25\pi \),\(A_{h}=0.12\pi \), \(\beta =1.5\pi \), \(\omega =0.05\pi \). Therefore, for \(\beta \ne \pi \), vertical travelling wave generated motion towards the wave propagation direction.

Figure 13 shows the motions of IMC for omnidirectional locomotion. The movements of WORMESH-II exhibited in both travelling wave propagation direction (y), and transverse direction (x). The trajectories of CM, \(\hbox {M}_{{11}}\), \(\hbox {M}_{{13}}\), \(\hbox {M}_{{31}}\), \(\hbox {M}_{{33}}\) and \(\hbox {M}_{{22}}\) of robot on xy plane is presented in Fig. 14. The WORMESH-II moved 200 mm in x direction and 100 mm in y direction. The average locomotion speed of the robot was \(v_{y}=1.53mms^{-1}\), \(v_{x}=4.13mms^{-1}\). The experiment results revealed that WORMESH-II can generate omnidirectional locomotion similar to the simulation.

Steering locomotion

Sidewinding locomotion generated movements in both longitudinal and transverse directions. In simulation, it implied that the trajectory of WORMESH-II was curved in omnidirectional motion when \(\beta \ne \pi \). Further, \(\hbox {A}_{{h}}\) along the kinematic chain was used to control the curvature of the trajectory during simulation whereas \(\hbox {A}_{{h}}\) was controlled by \(\Delta \) in the real joint mechanism of WORMESH-II.

Table 4 Gait parameters of steering locomotion for IMC (\(\sigma =0.5\pi \))

In the experiment of steering locomotion, different \(A_{h}\) were used along the kinematic chain to change the robot heading. The \(\Delta \) of each JM contort the \(A_{h}\). The sidewinding steering gait parameters of WORMESH-II is shown in Table 4. The robot movements of steering locomotion for WORMESH-II is shown in Fig. 15. The phase different \(\Delta \) was reduced along the y direction for each active kinematic chain.

Figure 16 shows trajectories of CMs, \(\hbox {M}_{{11}}\), \(\hbox {M}_{{13}}\), \(\hbox {M}_{{31}}\), \(\hbox {M}_{{33}}\) and \(\hbox {M}_{{22}}\)(COG) of WORMESH-II. Experiment results confirmed the proposed method successfully steers WORMESH-II. The steering radius of IMC was 1860 mm for the given gait parameters.


Section Kinematics of multiple sidewinding locomotion explained the locomotion kinematics of WORMESH-II for sidewinding locomotion. Equation 9 shows that the combination of vertical and horizontal travelling waves generates motions in longitudinal and transverse directions, and turning can be controlled by \(A_{h}\). Due to joint constraints between modules, \(\omega _{w}\) and \(\beta \) must be equal for each kinematic chains. The mathematical explanation of locomotion kinematics was qualitatively confirmed by the simulation. However, the mathematical explanation did not predict the trajectory of WORMESH-II in Fig. 9a. It would be a result of three CMs per kinematics chain, therefore, those kinematics chains could not generate complete and continuous sidewinding waves along the kinematic chains [19]. According to the simulation, overall locomotion was controlled by three sidewinding travelling wave parameters (Fig. 9f). The type of locomotion, either translational or omnidirectional, was determined by \(\beta \). When \(\beta =\pi \), locomotion was translational, and the robot moved in the lateral direction to the wave propagation direction. For omnidirectional locomotion, \(\beta \) decided the wave propagation direction and controlled the direction of motion generated by vertical travelling waves either robot moved in quadrants one and two or quadrants three and four. The phase difference between vertical and horizontal waves (\(\sigma \)) controlled the travelling direction in the lateral direction irrespective to the quadrant where the robot moved. The direction of motion within a quadrant depends on \(A_{v}\) and \(A_{h}\). When \(A_{h}=0\), the locomotion was pedal wave locomotion, and an increase in \(A_{h}\) increased the displacement towards the lateral direction.

In experiment with prototype of WORMESH-II, the parameters of \(A_{h}\), was replaced by \(A_{v}\) and \(\Delta \), because according to joint mechanism: \(A_{h}=(\hbox {A}_{v}/0.5\pi )\Delta \) (for \(0<\Delta \le \pi /2\)). The \(\sigma \) always keep at \(0.5\pi \) by joint mechanism. The prototypes of WORMESH-II had smooth locomotion trajectory in both translational and omnidirectional locomotion. The average velocities of omnidirectional gaits (4.4\(\hbox {mms}^{-1}\)) were higher than the translational locomotion gaits (2.5\(\hbox {mms}^{-1}\)) for the same \(A_{v}, A_{h}, \Delta \) and \(\omega _{w}\). because omnidirectional motion was a result of both longitudinal and lateral velocity components. The average velocity of omnidirectional gait is 76\(\%\) higher than that of the translational gait. Thus, omnidirectional locomotion gait was more efficient than translational locomotion gait. Furthermore, sidewinding translational locomotion exhibited a slightly lower velocity than pedal wave locomotion [7], while sidewinding omnidirectional motion was higher by 57\(\%\) (2.5\(mms^{-1}\) and 2.8\(mms^{-1}\) respectively). The slight difference between the translational locomotion of both sidewinding and pedal wave may be attributed to the presence of spring-loaded yaw joints.

The unequal amplitudes of the robot’s left and right sides formed a curved trajectory that corresponded to the mathematical explanation of locomotion kinematics (Fig. 16). However, the turning radius of experiment was quite larger than expected from the simulation. In the simulation, a slight amplitude difference of 0.0032 rad (\(\pi /60-\pi /64\)) between the left and right sides generated a significant diversion of the trajectory (Fig. 9a and d). Similarly, in the experiment, the amplitude difference \(A_{h1}-A_{h2}\) was 0.45 rad. This difference could be attributed to the joint constraint of adjacent JMs, which could not be precisely defined, and also to non-uniform ground friction during the experiment, which might have caused excursive slippage. Furthermore, the proposed locomotion kinematics equation (Eq. 6) assumed no relative motion between modules in the kinematic chain along the x-direction. However, spring joints introduce relative motion in that direction as well.


This work mathematically explained the locomotion kinematics, simulated and tested multiple sidewinding locomotion for WORMESH-II. The kinematic of locomotion (Eq. 9) revealed three locomotion tasks, omnidirectional movement, translational movement, and turning movement that can be generated by controlling wave parameters, \(A_{h}\) and \(\beta \). When \(\beta =\pi \), robot moves in the transverse direction, and when \(\beta \ne \pi \) the robot moves in an omnidirectional way. When \(A_{h}\) changes along the sidewinding wave, the robot’s trajectory was a curve, and higher \(A_{h}\) side moves further distance than the lower \(A_{h}\) side (Eq. 4). It is difficult to quantitatively explain the multiple waves sidewinding locomotion of WORMESH-II using a mathematical model of locomotion kinematics. Nevertheless, Eq. 9 qualitatively explained the locomotion behaviour, and the simulation proved that the locomotion of WORMESH-II is similar to its mathematical explanation. Since the mathematical model did not consider the number of links per kinematic chain, the trajectory of IMC in omnidirectional motion was slightly curved, which is the gap between the simulation and the mathematical model of locomotion kinematics.

According to the locomotion kinematic model, the sidewinding gait exhibited much more flexible and efficient locomotion behavior compared to the pedal wave locomotion of WORMESH-II [6]. This difference arises because certain module formations of WORMESH-II were unable to generate omnidirectional movement using the pedal wave gait [6]. In contrast, for the sidewinding gait, only three travelling waves are required to generate omnidirectional movement using six JMs [5]. This stands in contrast to the pedal wave locomotion, where all kinematic chains must propagate six travelling waves to achieve the same omnidirectional motion [5]. In the pedal wave gait [7], the relative motion between the surface and ground contact points can be considered a disadvantage, especially when moving on gravel and sandy surfaces. This relative motion can result in reduced traction and stability, making it challenging for the robot to maintain efficient locomotion on such uneven terrains. On loose or slippery surfaces like gravel and sand, the relative motion may lead to slippage, which can further hinder the robot’s movement and overall efficiency. In contrast, locomotion gaits like the sidewinding gait may offer advantages in such environments due to their design, which minimizes relative motion between the robot and the ground, providing better stability and traction.

In this work, all locomotion gaits were tested individually. As a result, future work should focus on developing a control system that combines these three locomotion gaits. The insights gained from Eq. 9 and the simulation results (Fig. 9f) provide a fundamental understanding essential for the development of such a control system.

Importantly, sidewinding movement was tested on a solid, level surface. WORMESH-II’s locomotion preferences must be tested on natural sandy and gravel terrains to completely evaluate its potential. Real-world testing will reveal the robot’s performance and flexibility in difficult conditions including uneven and loose terrain. By combining different locomotion gaits and conducting experiments in diverse terrains, researchers can enhance the robot’s overall locomotion capabilities and its potential for practical applications.

Availability of data and materials

Not applicable.


  1. Pettersen KY (2017) Snake robots. Ann Rev Control 44:19–44

    Article  Google Scholar 

  2. Liu R, Yao Y (2019) A novel serial-parallel hybrid worm-like robot with multi-mode undulatory locomotion. Mech Mach Theor 137:404–431

    Article  Google Scholar 

  3. Plaut RH (2015) Mathematical model of inchworm locomotion. Int J Non Linear Mech 76:56–63

    Article  Google Scholar 

  4. Umedachi T, Shimizu M, Kawahara Y (2019) Caterpillar-inspired crawling robot using both compression and bending deformations. IEEE Robot Autom Lett 4(2):670–676.

    Article  Google Scholar 

  5. Rasanga GVC, Hodoshima R, Kotosaka S (2021) The flatworm-like pedal locomotory robot WORMESH-I: locomotion based on the combination of pedal waves. IEEE/SICE Int Symp Syst Integr SII 2021:72–77.

    Article  Google Scholar 

  6. Rasanga GVC, Hodoshima R, Kotosaka S (2022) The flatworm-like pedal locomotory robot WORMESH-II: fundamental properties of pedal wave locomotion, robotics for sustainable future. Springer International Publishing, New York, pp 95–107

    Google Scholar 

  7. Rasanga GVC, Hiraishi K, Hodoshima R, Kotosaka S (2023) The WORMESH-II flatworm-like mesh robot with 2-DOF double joints. Robomech J 10:7.

    Article  Google Scholar 

  8. Kano T, Watanabe Y, Ishiguro A. Sheetbot: Two-dimensional sheet-like robot as a tool for constructing universal decentralized control systems. In: 2012 IEEE International Conference on Robotics and Automation 2012 May 14. IEEE, pp 3733–3738

  9. Chang MH, Chae SH, Yoo HJ, Kim SH, Kim W, Cho KJ (2019) Loco-sheet: Morphing inchworm robot across rough-terrain. In: 2019 2nd IEEE International Conference on Soft Robotics (RoboSoft). IEEE, pp 808–813

  10. Hariri H, Bernard Y, Razek A (2018) 2-D traveling wave driven piezoelectric plate robot for planar motion. IEEE/ASME Trans Mechatron 23(1):242–251.

    Article  Google Scholar 

  11. Watanabe M, Tsukagoshi H (2017) Soft sheet actuator generating traveling waves inspired by gastropod’s locomotion. IEEE Int Conf Robot Autom ICRA 2017:602–607.

    Article  Google Scholar 

  12. Wang W, Lee JY, Rodrigue H, Song SH, Chu WS, Ahn SH (2014) Locomotion of inchworm-inspired robot made of smart soft composite (SSC). Bioinsp Biomimetics 9(4):046006

    Article  Google Scholar 

  13. Xiao X, Cappo E, Zhen W, Dai J, Sun K, Gong C, Travers MJ, Choset H (2015) Locomotive reduction for snake robots. In: 2015 IEEE International Conference on Robotics and Automation (ICRA), pp 3735–3740.

  14. Burdick JW, Radford J, Chirikjian GS (1993) A ’sidewinding’ locomotion gait for hyper-redundant robots, [1993]. In: Proceedings IEEE International Conference on Robotics and Automation, vol 3, pp 101–106.

  15. Astley HC, Gong C, Dai J, Travers M, Serrano MM, Vela PA, Choset H, Mendelson JR, Hu DL, Goldman Daniel I (2015) Modulation of orthogonal body waves enables high maneuverability in sidewinding locomotion. Proc Natl Acad Sci 112:6200–6205

    Article  Google Scholar 

  16. Mohsen M, Alireza A (2019) Analytical modeling of a 3-D snake robot based on sidewinding locomotion. Int J Dyn Control.

    Article  Google Scholar 

  17. Goldman DI, Hu DL, Choset H, Mendelson JR, Hatton RL, Travers M, Astley H, Gravish N, Gong C, Marvi H (2014) Sidewinding with minimal slip: Snake and robot ascent of sandy slopes. Science 346:224–229

    Article  Google Scholar 

  18. Rasanga GVC, Hirashi H, Hodoshima R, Kotosaka S (2022) The Flatworm-Like Mesh Robot WORMESH-II: Steering Control of Pedal Wave Locomotion. In: IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)

  19. Gómez G, Juan, Zhang H, Boemo EI (2007) Locomotion principles of 1D topology pitch and pitch-yaw-connecting modular robots. InTech

Download references


Not applicable.


This work was supported by JSPS KAKENHI Grant Number: JP16K06175.

Author information

Authors and Affiliations



GR developed all locomotion gaits, programming, simulation, mathematical modelling and wrote the paper. KH contributed for hardware development. RH and SK conducted a research concept, participated in design adjustment, and drafted a paper draft assistant. All authors read and approved the final manuscript.

Corresponding author

Correspondence to Ganegoda V. C. Rasanga.

Ethics declarations

Ethics approval and consent to participate

Not applicable.

Consent for publication

Not applicable.

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Rasanga, G.V.C., Hiraishi, K., Hodoshima, R. et al. Sidewinding locomotion of flatworm-like mesh robot WORMESH-II. Robomech J 10, 26 (2023).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: