Open access peer-reviewed article

A Kinematic Variable for Analyzing Snake Robot Dynamics

Thorstein R Rykkje

Thomas J Impelluso

This Article is part of Robotics Section

Article metrics overview

213 Article Downloads

Article Type: Review Paper

Date of acceptance: January 2024

Date of publication: February 2024

DoI: 10.5772/acrt.32

copyright: ©2024 The Author(s), Licensee IntechOpen, License: CC BY 4.0

Download for free

Table of contents


Introduction
The moving frame method (MFM) for single bodies: SO(3)
The moving frame method for multi-bodies: (SE3)
A minimal set of generalized coordinates for multi-bodies
Kinetics of multi-bodies and a new restriction on the variation of the angular velocity for Hamilton’s principle
Results
Conclusion
Future work
Conflict of interest

Abstract

This paper presents a modern mathematical method to analyze snake robot dynamics. The method is rooted in three facets of contemporary mathematics: Cartan’s concept of endowing all moving bodies with their own reference frames, Lie group theory with its associated algebra, and a compact notation. Building upon previous work with cranes, this paper presents a new kinematic variable for determining the equations of motion for any number of rigid bodies linked in a tree structure with revolute joints. The core equations simplify the analysis and introduce a notation for the coordinate transformation matrix that directly ports to coding. The resulting equations can be readily applied using symbolic math packages and direct numerical solvers. In addition to its primary role as a research document, this paper also serves as an expository educational resource, presenting the methodology in a semi-tutorial format. The culmination of this work yields a comprehensive 3D forward-kinematics analytical model for analyzing the multi-body dynamics of a snake robotic system.

Keywords

  • Engineering computing

  • snake robots

  • search and rescue

  • Lie algebra and group theory

  • robotics

  • multi-body dynamics

  • Hamilton’s principle

  • principle of virtual work

Author information

Introduction

Snake robots have a wide range of potential applications due to their unique and flexible design. Such robots can move in ways that traditional wheeled or legged robots cannot, making them suitable for various tasks in different fields.

Early developments in snake robotics can be traced back to the work of Hirose [1], who introduced the concept of biologically inspired snake-like robots. Ali Asadian [2] provided insights into the design and control of snake robots and offered a comprehensive review of state-of-the-art techniques and methodologies. Continuing the applications, Rieber et al. [3] explored the use of robotic snake-arm devices for minimally invasive surgery. Furthermore, snake robots can navigate inside pipelines and conduct inspections for damage, corrosion, or blockages. They can access areas that are challenging for humans to reach without extensive excavation [4]. Finally, submersible snake robots are designed to explore underwater environments, including shipwrecks, underwater caves, and oceanic ecosystems. They can maneuver through tight underwater spaces and collect data or perform maintenance tasks [5].

This paper supplements these achievements by applying a new mathematical method to analyze snake robots. In this new method, both 3D and 2D analyses and single and multi-bodies analyses share the same notation. A precedent examination was conducted by Rykkje et al. [6]. Nevertheless, that preceding study is herein extended and optimized by the introduction of a new kinematic transfer variable that enhances the analytical process through pattern revelation. This then facilitates the coding of a generalized system for structures of an arbitrary number of bodies, as shown in Figure 1.

Figure 1.

Conceptual snake robot: conceptual model for visualization and development of the method.

The moving frame method (MFM) for single bodies: SO(3)

The mathematical foundation of the MFM

Élie Cartan (1869–1951) [7] introduced the concept of assigning a reference frame to each object, be it a curve, a surface, or even Euclidean space itself. He then employed an orthonormal expansion to express the rate of frame change in terms of the frame; this expansion motivated this work. We leverage this by placing a reference frame on each moving link in a snake robot. However, this necessitates a means to relate these moving frames to each other; and for this, we turn to Lie group theory and associate algebra.

Marius Sophus Lie (1842–1899) developed the theory of continuous groups and their associated algebras, which we use to relate the moving frames. This work leverages the mathematics of rotation groups and their algebras but distills them to straightforward matrix multiplications. Yet, to maintain simplicity, a new notation is also required.

Ted Frankel [8] (1929–2017) devised a compact notation in his work on geometrical physics, which we adopt to ensure a uniform notation for both 2D and 3D analyses. This notation remains consistent whether dealing with single bodies or multi-body linked systems, making it accessible to undergraduate students embarking on advanced research endeavors.

The pedagogical effectiveness of this method in the undergraduate curriculum has been assessed by Impelluso [9]. The authors of this paper have previously applied the method to model various systems (not listed for vainglorious citations but to underscore the versatility of the method); these include studies on ROV motion [10], friction [11], gyroscopic wave energy converters [12], a knuckle boom crane [13], ship stability [14], and car dynamics [15].

The MFM for single bodies

Figure 2 presents two bodies not yet aligned in a snake-like linked tree (for the sake of clarifying the frames). At the center of mass of each moving body (iconified by a solid circle), a reference body frame is placed.

Figure 2.

One body, two frames: two free floating bodies with absolute and relative translation vectors.

The parenthetical superscript on the frame references the body. The subscript references the frame axes’ coordinate directions. The third axis (not shown) conforms to the right-hand rule (but only for figure clarification; the method does not preclude 3D motion). The frame is time-dependent, translating and rotating:

At time t = 0 deposit an inertial frame from a moving frame. Select the first link in the case of the snake robot and then parallel translate the frame (before rotation commences) using the Point Wise Principle of Euclidean space, to a more convenient location (as above):
Express the absolute position vector to a moving frame e(𝛼) as a translation formulated in the inertial frame, eI:
Designate position and velocity as x(𝛼)(t) and when coordinates are formulated in the inertial frame.

Express a relative position vector to a moving frame e(𝛼+1) as a translation formulated in a previous moving frame, e(𝛼):

Designate position and velocity as s(𝛼+1∕𝛼)(t) and when coordinates are formulated in a moving frame.

Add the absolute position vector of the 𝛼-frame r(𝛼)(t) and the relative position vector s(𝛼+1∕𝛼)(t), to obtain the absolute position vector of the (𝛼 + 1) frame:

The absolute rotation of the body-𝛼 frame from the inertial frame can be asserted through a member of the Special Orthogonal Group, R(𝛼)(t) ∈ SO(3)
The relative rotation of a frame 𝛼 + 1 from a previous frame 𝛼 can be asserted through a relative rotation matrix, also R(𝛼+1∕𝛼)(t) ∈ SO(3):
The orientation of the body 𝛼 + 1 can be expressed from the inertial frame by exploiting the group closure property of SO(3):
The time rate of frame rotation, designated with a superposed dot, can be determined by differentiating Equation (6):
The inverse of a member of SO(3) is the transpose:
Apply Equation (10) to invert Equation (6) and then reformulate Equation (9):
The time rate of frame rotation is now expressed in the same frame in accordance with the work of Elie Cartan.

Define the skew-symmetric angular velocity matrix as follows, noting that this element is a member of the associated Lie algebra, :

Summary of the MFM for single bodies

The equations below formally define the properties of the Lie Group used, and its associated algebra:

A double headed over-arrow, below, designates the property of skew-symmetry. Thus, referencing Equations (11) and (12) we can assert the rate of change of the frame in terms of the frame, where the term represents a member of the Lie Algebra:
Next, we unskew the skew symmetric angular velocity components into a column:
Furthermore, assert the position vector from the inertial frame:
In closing, the three standard rotation matrices and their associated skew symmetric forms are:

Additional mathematical considerations

Group Closure properties hold for sequential rotations (e.g.: the product of two rotation matrices is also a rotation matrix):

The associated algebra provides a recursive formula for computing the skew symmetric angular velocity matrix from a previous one (which can be worked out from previous results and time differentiated frame-2 from frame-1):
Till this moment, there is no notational distinction between 2D and 3D. However there exists an additional formula that is valid in three dimensions (proven through index notation or physical considerations, or merely by exposition):
A judicious use of Equation (22) applied to Equation (20) shows (after lifting the overhead arrow that designates a skew symmetric matrix, converting to column form):
Expanding the above to multiple bodies in a snake-tree (where n is the body number):
There exists a rule for the components, formulated on the cross product (when a skew symmetric form is multiplied by a column of components): reverse the cross product (skewing the column instead), introduce a sign which is then absorbed by the transpose of a skew form.
There is another notational convenience deployed, the structured columns of the Lie generators of , which assist in automating the coding:
There is one final notational consideration for use. Take the derivative of Equation (16), and then using Equation (15):
With the understanding that the first term after the equality represents a vector crossed with itself, we obtain:
Please allow this section closure with a short segue into pedagogy. The traditional pedagogy in undergraduate introductory dynamics, remains in the realm of 2D. Bereft of real world problems, the curriculum presents problems as a hunt for equations for unknowns by providing unrealistic information, often departing from reality. The MFM lifts the discipline to 3D, and thereby engages students, reduces memorization, elicits patterns and inspires students to embrace the discipline and conduct innovative research. Readers are encouraged to review Impelluso [5] for an exposition of the introductory content in the context of student learning assessment. The authors provide access to:
  • 500 voiced, animated instructional PowerPoint slides where modified equations slide in to replace the previous ones;

  • 100 problems (2D, 3D, single and multi-bodies) solved in a consistent manner to elicit patterns as a way to bridge conceptual understanding and unfortunate memorization; several problems solved incorrectly at first to elicit learning (students learn as much from how not to solve problems, incorrectly, as they do from correct solutions);

  • 50 3D web-based interactive WebGL animations (to assist with visualization);

  • 5000 pages of pedagogical content written in a style called Swipe Learning: single concepts on each page, equations colored to show changing terms, figure repeated with additional information, all content repeated as necessary;

  • roadmaps for implementation in the curriculum from the undergraduate to the graduate.

The moving frame method for multi-bodies: (SE3)

Denavit and Hartenberg [16] presented homogenous transformation matrices and are widely used in computer science and robotics. However, this paper exploits their associated algebra. While even this continuation may also be familiar, we request the reader to be patient for a bit longer.

Define a frame connection as a structure that contains a frame e(𝛼)(t) and its location, :

The inertial frame connection may be written as (eI   0) (implicitly defining a zero origin). We may relate the moving frame connection in Equation (29) to the inertial frame connection:
Define the absolute frame connection matrix E(𝛼)(t) ∈ SE (3) The Special Euclidean Group:
The inverse of a member of SE(3) (31) is analytically known:
Next, apply this to the analysis of a snake robot (for just two elements, to start), as shown in Figure 3 which presents a fixed wall and an inertial frame in green. This time, the bodies are now linked with revolute joints with known rotational axis. To avoid clutter, the third axis is assumed to adhere to the right-hand rule. Note that the figure suggests rotation about the third axis; however, rotations could be any axis (taking the snake robot out of the plane). The hollow circles represent motor torques; the solid circles continue to represent the body’s center of mass.

Figure 3.

Two links of a snake robot (this time, connected by revolute joints) with frames: starting the development of the method with the two first bodies as shown.

Frame relationships for the first body

The body-1 frame connection relates to the inertial frame connection though a frame connection matrix.

To reach the body-1 frame at the center of mass of body-1 in Figure 3:
  • Translate to Joint 1 from the inertial frame (bold vector in the figure), using the inertial frame:

    • Rotate from the Inertial (in this case, about axis 3, however, this can be easily changed, or cascaded with two more sequential rotations, following closure):
    • Translate to body 1 from Joint 1 (use “/” when referring to a non-inertial point):

All three transformations, in the form of three sequential members of SE(3) (where dimensionality of the block form will be shown only in the first term of this first equation) present as:

Take the time rate of Equation (35)
The inverse of a member of SE(3) is analytically known:
(There is no reason one cannot assume that the translation parameters are time-dependent, but this is for a future project of deformable links in a snake robot.)

Define the frame connection rate (the product of the inverse rate of the member of SE(3)):

In order: apply Equation (12), commute and transpose the term in the upper right quadrant using Equation (25). However, since it is now obvious, the time dependent notation is dropped:
Next, extend the expression in its use, by implicitly defining a new term (upper right quadrant of Equation (40)) that becomes useful to establish the patterns:
Extract information concerning the rate of frame rotation and rate of frame translation.
There are two final steps before progressing to the next body in the snake robot.

First, extract the column of components of the angular velocity matrix in the same frame:

Second, though an absolute rotation matrix, we formulate the velocity v(1)(t) in the inertial frame and extract the coordinate :

Frame relationships for the second body

State the body 2 and body 1 frame connections and the relative frame connection matrix:

To define the parameters of the frame connection matrix:
  • Translate to Joint 2 from body 1: d(J2∕1)

  • Rotate body 1 into body 2: R(2∕1)

  • Translate to body 2 from Joint 2: d(2∕J2)

Take the rate and inverse:

Define the relative frame connection rate and its simplified form where two terms are implicitly defined:
Conducting a similar process as for the algebra of SO(3), we find the following recursion formula (elegantly harmonious with Equations (20) or (21), eliciting the patterns):
Working out the matrix multiplications:
For the angular velocities, we may state, recollecting Equation (23):
For the translational velocities, we now define a kinematic transfer variable; one that is time dependent due to the time dependence of R(2∕1). We will find that this new parameter simplifies the notation and sets up the patterns to follow.
We can now state the velocity in the inertial frame (the latter exploiting the closure properties). This is the novelty of this paper: to formulate the following expressions that will prove to be recursive for all links:
Extract (after slight modification exploiting orthogonality and closure):
We have used the previous mathematical tools, Equations (19)–(28) to ensure each term, above, trails with expressions for omega or translational velocity from the inertial frame. The goal is to build a linear relationship between Cartesian and generalized coordinates—though that is not yet apparent and we continue to solicit patience.

Frame relationships for the third body 

Figure 4.

Three links of a snake robot with frames: by expanding to 3 or more bodies, the pattern emerges. 

Consulting Figure 4, we can now extend the chain to three bodies, working out the mathematics or simply observing the pattern.

Define a kinematic Transfer variable:
Proceed to velocity in the form of the inertial coordinates:
Body 4: with one more notational change to exploit the sum notation:

Patterns: frame relationships for multi-bodies

Generalizing to n number of bodies and restating the equation for the angular velocity (and recognizing that with no rotation from itself, R(nn)(t) ≡ I

Once again, all forms must be algebraically manipulated, using the mathematical tools (19)–(28), to ensure that each expression terminates with a relative angular velocity column, or velocity in the inertial frame. This will help us transition to generalized coordinates.

Finally, we reassert that patterns appear throughout the MFM. The revelation of patterns reduces the pathological temptations to memorize equations. This, in turn, reduces student attrition while clarifying the discipline.

A minimal set of generalized coordinates for multi-bodies

The Cartesian velocities and angular velocities for 𝛼-bodies are grouped in a 6n × 1 matrix . Note that each single term, Equations (59a), (59b), represents three coordinates, all being absolute translations or rotations from an inertial frame; Equation (59c) is the full form (however, each single term, itself, being three terms for each coordinate):

The generalized essential velocity is denoted by . It is a set that takes account of the minimal degrees of freedom. In the model for this snake robot where the ten links rotate from each other, the angular velocities for each body will be reduced to ten generalized essential velocities (for a ten-link system).
The Cartesian velocities are related to the generalized essential velocity matrix. The B-matrix (discussed in the next section), called the Coordinate Transfer Matrix, establishes a linear relationship between the two coordinate sets:
As a result of the kinematic transfer variable, we can automate the construction of the Coordinate Transfer Matrix. However, we segue into this by first discussing the kinetics.

Kinetics of multi-bodies and a new restriction on the variation of the angular velocity for Hamilton’s principle

In accordance with Hamilton’s Principle, the trajectory of a system is defined by the finding the variation of the action (the integral of the mechanical Lagrangian: the difference between the kinetic, K, and potential, U, energy) and setting it to zero:

Next, state the linear momentum L(𝛼)(t), and angular momentum H(𝛼)(t), for each body, where, in the latter, J(𝛼) represents the moment of inertia matrix for body 𝛼, with frame at the center of mass.
The total kinetic energy of a body 𝛼 with the frame placed at the center of mass is defined as:
Define [M] to contain, diagonally, the masses and moments of inertia for each body (each, a 3 by 3 submatrix):
Thus, using Equations (62) to (65) the total kinetic energy is expressed in matrix form as:
To include the non-conservative forces, we turn to the extension of Hamilton’s Principle, known as the Principle of Virtual Work. Here, we formulate the variation of the work done as the negation of the variation of the conservative potential energy and the non-conservative work.
Then, we may assert
However, we must then formulate the work done by the non-conservative applied forces. Wittenburg [17] used a weighted virtual angular velocity using the moment and the power. This was the weakest point in the classical multibody dynamics. The problematic issue then, becomes this question: “through what variation of the angular velocities are the torques taken?” This approach has been rectified by Holm [18], by creating a form for the proper variation of the angular velocity.
Defining this
We may assert:
With the following equation, we structure the virtual Cartesian displacements
Next, the variation of the velocities is called the virtual Cartesian velocities :
Thus, in summary, the linear displacement, the variation of the derivative is equal to the derivative of the variation:
However, the restriction on the variation of the angular velocity is:
Define [D], a skew symmetric matrix that contains the angular velocity matrices for each frame:
Using Equation (76), Equations (74) and (75) are written in compact form as:
The variation of the kinetic energy is re-expressed as:
Next, we require the forces and moments acting on the different bodies of the system. For each of the bodies, a force vector consisting of the forces and moments are listed in a set. This force will include the forces and torques exerted by translational motors and internal forces.
The terms are:
The virtual work done by the generalized forces can then be expressed as:
The B-matrix that relates the Cartesian velocities to the essential generalized velocities , also relates the virtual generalized displacements to the essential virtual displacements
The transpose of the above is used to reform Equation (80):
The essential generalized forces , worked out through the Calculus of Variations are defined as:
By inserting the expressions obtained for the variation of the kinetic energy and the virtual work into equation, we obtain the basis for the equation of motion:

Final equation of motion

After performing the machinery of the Calculus of Variations, we obtain a second order coupled differential equation:

where the following terms are defined:
Solving with respect to the list of generalized accelerations , yields:
This list of five equations, one for each generalized coordinate, will be integrated numerically using the method of Runge–Kutta.

The power of the MFM lies in its simplicity; avoidance of the cross product and the use of matrix multiplications. This enables rapid analysis of a multitude of real world 3D machines and mechanism. This is now taught in an undergraduate class. This paper, however, presented further patterns that the method reveals, this time, with a focus on snake robots. In this way, the method opens vistas for new research and development.

Before finalizing, we note that in addition to constructing the B matrix for this analysis, it is incumbent to also build the B-dot matrix.

Construction of B matrix to relate Cartesian and generalized coordinates

To construct the B Equation (61) with computation, in mind, it must be written as a matrix vector product in the form as below.

Each column in B will correspond to a specific angular velocity in the vector. The inputs will alternate starting with the translational velocities of body 1, then angular velocity of body 1, then translational velocities of the second body, and so on. In the notation below, the symbol g, is one of the three structured generators, Equation (26), depending on the axis of rotation for that link from the previous. Below, i counts from 1 to n bodies, and j counts from 1 to i in the case of a snake like structure with one body only having at most one parent and one child.
When differentiating Equations (89) and (90) the constant structured generators, g, drop.

Construction of the time derivative

We time differentiate the B matrix in Equations (89) and (90). The angular velocities are stated in their own local frame, as the rate of change of the frame itself drops out as shown in Equation (28). The translational velocity inputs are already stated in the inertial frame, as there is no rate of change in the frame by the definition of an inertial frame itself. This makes the coding algorithm straight forward, and the resulting equations are presented below.

Results

3D visualization and WebGL

Three-dimensional interactive physics-based simulations in engineering can sometimes provide a heightened level of verification compared to traditional 2D plots; and while this paper provides both, we strongly espouse the 3D animations (soon, PDF will incorporate 3D). These simulations enable engineers to replicate real-world scenarios with greater fidelity, considering multiple dimensions and complex interactions among physical forces. Unlike static 2D plots, 3D simulations allow engineers to observe dynamic behaviors, such as material stress, fluid flow, or structural deformations, in real time. This dynamic insight not only enhances the understanding of system behavior but also facilitates the identification of potential issues and design flaws that may be overlooked in 2D plots.

This is a first pass at the analysis for this new research group. The next steps are to present more proper validation of the method. To this end, we solicit guidance and collaboration from all interested readers. Until that time, we feel that 3D simulations pose an attractive way to quasi-validate the work, and we discuss that now.

WebGL (Web Graphics Library) is a JavaScript interface for rendering interactive 2D and 3D computer graphics. https://home.hvl.no/prosjekter/rykkje/Projects/robot/

Validation of the equation of motion

To validate and test the MFM, we used the resulting Equations (89) through (92) to develop the system of equations that governs the motion of the system. We then provided second order time-dependent polynomial functions, as presented in Equation (93) and Table 1 to the q vectors in Equation (94). The desired motion of the links generated by the polynomials was used to obtain the associated moments from Equation (94), with the applied and conservative forces split as shown in equation.

The resulting applied moment is injected into Equation (85) to validate that the resulting motion is the one we desired.
Cobra motion
Body numberMotion function factors
3, 5, 7       
13, 15, 17       
0, 1, 2, 4, 5, 8, 9, 10, 11, 12, 14, 16, 18, 19a = 0        b = 0
Accordion motion
BodiesMotion function factors
2, 6, 14, 18       
4, 8, 12, 16       
0, 1, 3, 5, 7, 9, 10, 11, 13, 15, 17, 19a = 0        b = 0
Helix motion
BodiesMotion function factors
2, 3, 4, 5, 6, 7, 9, 11, 13, 18       
12, 14, 16       
0, 1, 8, 10, 15, 17, 19a = 0        b = 0

Table 1

Parameters for various snake robot behaviors.

The system of equations was solved using the RK4 numerical integration method, to obtain the predicted motion of the robot.

  • The accordion and cobra movement (ref.: Website) were given polynomial functions to simulate and validate 2D motion, as in both these cases, the bodies of the robot moves strictly in the same plane.

  • To simulate 3D movement, a spiral function was given as an input on the website. Figure 5 presents a snapshot of the animation with circular helix motion.

Figure 5.

One snapshot of the virtual snake robot: the reader is encouraged to watch the 3D animation online. In its absence, here is an example of the motion.

The resulting angles for each body were exported and analyzed using MATLAB.

The reader is encouraged to visit the website which presents the motion in full 3D. In its absence, static 2D snapshots Figures 6 and 7 show the motion of body 20 i.e. the head of the snake. Figure 6 shows the simulated relative rotation with respect to body 19, while Figure 7 shows the absolute translation relative to the inertial frame situated at body 1.

Figure 6.

Relative motion of body 20: the “head” of the snake moves from 0 to −0.7 rad relative to the previous body.

Figure 7.

Translation of the snake head: due to all the bodies moving, the head rises from the initial position and spirals upwards.

The difference in desired and replicated angles were calculated and summed up to 3.1434e-05 radians.

The motion desired is replicated by the solver, showing that the algorithm works as intended and simulates the motion of a 20 linked system of rigid bodies given the external forces.

Conclusion

This paper has presented an extensible and efficient way of developing the equations of motion for a robotic snake structure for an arbitrary number of links. The resulting kinematic transfer variable deployed in Equations (89) to (92) lays the groundwork for further software development and parallelization of the systems of equations generated by the method.

The equation of motion was validated using polynomial input to calculate the needed applied moments. Using these moments, the system replicates the motion desired with a total error sum reduced to numerical inaccuracies in the integration, not calculation errors. Thus, the system presented works for an arbitrary number of linked rigid bodies with known rotational axis.

By applying the kinetic transfer variable, the equation of motion for a system of n number of bodies can be readily developed. Together with the possibilities offered by symbolic solvers i.e. MATLAB symbolic, SymPy or Mathemathica the equations can be automatically written for any kind of linked system, opening the door to a precompiled library of multibody dynamics solvers.

Future work

The equations of motion (85), and Equations (89) through (92) pose a significant efficiency increase, in the sense, that they can be calculated in parallel. The columns require the information of the input above in the i counter, but nothing from the j. As such the columns of the B and can be computed in parallel and increase the speed of the analysis.

The systems of equations could also work as a digital twin. With feedback from a robot, it could simulate orientation and position of the structure for an operator. By visualizing the state of the robot, it would enhance the operators control and make the passage through narrow and complicated areas easier. However, this would require a contact algorithm, and perhaps an extension of the method into inverse dynamics. The authors are happy to share guidance so others can take on this challenge.

Finally, the authors reiterate their invitation to contact them for access to the learning materials that present the method in way accessible to students and faculty. Readers may contact the lead author for a theoretical discussion of the paper, and the second author for access to the pedagogical content.

Conflict of interest

The authors declare no conflict of interest.

References

  1. 1.
    Hirose S. Biologically inspired robots: snake-like locomotors and manipulators. Oxford: Oxford University Press; 1993.
  2. 2.
    Asadian A, Chen IM. Design and control of snake robots: a comprehensive review. Robot Auton Syst. 2015;73: 6089.
  3. 3.
    Rieber M, Hagn U, Nickl M, Jörg S, Passig G, and Jörg SSnakes in surgery: a review on robotic snake-arm devices for minimally invasive surgery. Int J Med Robot Comput Assist Surg. 2011;7(4):392403.
  4. 4.
    Chitikena H, Sanfilippo F, Ma S. Robotics in search and rescue (SAR) operations: an ethical and design perspective framework for response phase. Appl Sci. 2023;13: 1800.
  5. 5.
    Virgala I, Kelemen M, Prada E, Sukop M, Kot T, Bobovský Z, A snake robot for locomotion in a pipe using trapezium-like traveling wave. Mech Mach Theory. 2021;158: 104221.
  6. 6.
    Rykkje TR, Gulbrandsen E, Hettervik AF, Kvalvik M, Gangstad D, Tislevoll TO, Production and analytics of a multi-linked robotic system. In: Proceedings of the ASME 2019 International Mechanical Engineering Congress and Exposition. Volume 4: Dynamics, Vibration, and Control. Salt Lake City, Utah, USA; November 11–14. New York: ASME; 2019. p. V004T05A056. Available from: https://doi.org/10.1115/IMECE2019-10434.
  7. 7.
    Cartan É. On manifolds with an affine connection and the theory of general relativity. Napoli, Italy: Bibiliopolis; 1986.
  8. 8.
    Frankel T. The geometry of physics, an introduction. 3rd ed. Cambridge: Cambridge University Press; 2012.
  9. 9.
    Impelluso T. The moving frame method in dynamics: reforming a curriculum and assessment. Int J Mech Eng Educ. 2017;46. Available from: https://doi.org/10.1177/0306419017730633.
  10. 10.
    Austefjord K, Larsen L-K, Hestvik M, Impelluso T. Modelling subsea ROV robotics using the moving frame method. Int J Dyn Control. 2019;7: 13061320. Available from: https://doi.org/10.1007/s40435-018-0471-6.
  11. 11.
    Rykkje TR, Leinebø D, Bergaas ES, Skjelde A, Impelluso TJ. Modeling friction in robotic systems using the moving frame method in dynamics. Int J Mech Eng Educ. 2021;49(1):2559. Available from: https://doi.org/10.1177/0306419019844160.
  12. 12.
    Impelluso TJ. Dual gyroscope wave energy converter. In: Proceedings of the ASME 2019 International Mechanical Engineering Congress and Exposition. New York: ASME; 2019.
  13. 13.
    Eia ME, Vigre EM, Rykkje TR. Modeling a knuckle-boom crane control to reduce pendulum motion using the moving frame method. In: Proceedings of the ASME 2019 International Mechanical Engineering Congress and Exposition. New York: ASME; 2019.
  14. 14.
    Flatlandsmo J, Smith T, Halvorsen ØO, Impelluso TJ. Modeling stabilization of crane-induced ship motion with gyroscopic control using the moving frame method. ASME J Comput Nonlinear Dyn. 2019;14(3):031006.
  15. 15.
    Denavit J, Hartenberg RS. A kinematic notation for lower-pair mechanisms based on matrices. ASME J Appl Mech. 1955;22(2):215221.
  16. 16.
    Lanczos C. The variational principles of mechanics. Toronto: Dover Publications; 1970.
  17. 17.
    Wittenburg J. Dynamics of multibody systems. 2nd ed. Cham: Springer; 2008.
  18. 18.
    Holm D. Geometric mechanics, part II: rotating, translating and rolling. Singapore: World Scientific; 2008.

Written by

Thorstein R Rykkje and Thomas J Impelluso

Article Type: Review Paper

Date of acceptance: January 2024

Date of publication: February 2024

DOI: 10.5772/acrt.32

Copyright: The Author(s), Licensee IntechOpen, License: CC BY 4.0

Download for free

© The Author(s) 2024. Licensee IntechOpen. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/), which permits unrestricted reuse, distribution, and reproduction in any medium, provided the original work is properly cited.


Impact of this article

213

Downloads

626

Views

1

Altmetric Score


Share this article

Join us today!

Submit your Article