Next Article in Journal
Physical-Layer Security with Irregular Reconfigurable Intelligent Surfaces for 6G Networks
Previous Article in Journal
Marine Structural Health Monitoring with Optical Fiber Sensors: A Review
Previous Article in Special Issue
Realization of Crowded Pipes Climbing Locomotion of Snake Robot Using Hybrid Force–Position Control Method
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Generalized Design, Modeling and Control Methodology for a Snake-like Aerial Robot

1
Department of Mechanical Engineering, The University of Tokyo, Tokyo 113-0021, Japan
2
Department of Mechano-Infomatics, The University of Tokyo, Tokyo 113-0021, Japan
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Sensors 2023, 23(4), 1882; https://doi.org/10.3390/s23041882
Submission received: 21 December 2022 / Revised: 1 February 2023 / Accepted: 1 February 2023 / Published: 7 February 2023
(This article belongs to the Special Issue Advances in Snake Robots of Bio-Inspired Robotics)

Abstract

:
Snake-like robots have been developing in recent decades, and various bio-inspired ideas are deployed in both the mechanical and locomotion aspects. In recent years, several studies have proposed state-of-the-art snake-like aerial robots, which are beyond bio-inspiration. The achievement of snake-like aerial robots benefits both aerial maneuvering and manipulation, thereby having importance in various fields, such as industry surveillance and disaster rescue. In this work, we introduce our development of the modular aerial robot which can be considered a snake-like robot with high maneuverability in flight. To achieve such flight, we first proposed a unique thrust vectoring apparatus equipped with dual rotors to enable three-dimensional thrust force. Then, a generalized modeling method based on dynamics approximation is proposed to allocate the wrench in the center-of-gravity (CoG) frame to thrust forces and vectoring angles. We further developed a generalized control framework that can handle both under-actuated and fully actuated models. Finally, we show the experimental results with two different platforms to evaluate the flight stability of the proposed snake-like aerial robot. We believe that the proposed generalized methods can provide a solid foundation for the snake-like aerial robot and its applications regarding maneuvering and manipulation in midair.

1. Introduction

The development of snake-like robots has a long history that started with the study of real snakes’ motion [1], which provided the mathematical basis. Then, various bio-inspired mechanical designs were introduced to achieve the snake-like configurations [2,3,4,5], and the motion control and planning methods were then proposed for the snake-like locomotion [6,7,8,9,10]. The most unique feature of snake-like robots compared to other legged robots is obstacle-aided locomotion [11], which depends on explicit obstacles for pushing itself and moving forward. During the last decade, underwater snake-like robots have undergone considerable development [12,13,14]. These robots demonstrate a similar mechanism to obstacle-aided locomotion by utilizing the fin structure to generate sufficient reactive forces from the surrounding water.
The origins of terrestrial and underwater snake-like robots can be found in nature. However, it is significantly difficult to find phenomena related to snakes in the aerial domain because snakes have no wings, which are almost mandatory for flight. A unique case of snake motion in the air is via lateral undulation [15], where it uses the body as a wing to act like a glider. However, it is impossible to find a bio-inspired mechanism or motion to enable a snake-like robot to move freely in the air. Thus, we focused on the active propulsion mechanism (that is the propeller) to generate sufficient thrust force to handle the gravity. With this floating ability, the aerial robot can perform snake-like motions, such as squeezing through narrow spaces in midair, which can significantly extend the exploration range in various inspection and rescue applications. Furthermore, the ability of whole body grasping that mimics snake wrapping can be another advantage of a snake-like structure to handle and transport a large object in midair, indicating their superiority over ordinary aerial robots.
In our previous work [16], a unique propulsion system was presented to enable a snake-like aerial robot composed from four links. However, this modular design was not validated with different link numbers, especially with fewer links (e.g., two links) which showed an under-actuated property. Hence, in this work, we first developed a modularized link structure with the proper propulsion system for arbitrary link numbers, and further introduced generalized modeling and control methods to achieve stable flight for both under-actuated and fully actuated models, as shown in Figure 1.

1.1. Related Works

1.1.1. Existing Snake-like Robots

Most snake-like robots have a highly modularized configuration, which contains at least one degree-of-freedom (DoF) at a joint to enable the articulated motion. The designs for snake-like robots can be categorized into six groups based on the type of locomotion: (i) robots with passive wheels [17]; (ii) robots with active wheels [18]; (iii) robots with active treads [4]; (iv) robots based on undulations using vertical waves [5]; (v) robots based on undulation using linear expansion [19]; (vi) robots with prismatic joints [20]. Most of the locomotion in these snake robots is obstacle-aided and thus non-holonomic, which indicates that the stability of the whole motion is easy to be achieved due to the large contact surface with the ground. Therefore, the active balance control, which is important for legged robots (particularly the bipedal robot), can be ignored for most of the snake-like robots.
The under water snake: the propulsion system, weak gravity environment and strong environment damping (water resistance). In the water domain, the locomotion depends on the balance between water resistance, buoyancy, and gravity. Thus, a fin structure is generally deployed to enable three-dimensional undulation locomotion in the water [21]. On the contrary, the screw as an active propulsion device is also used to achieve omni-directional locomotion that makes it easier to perform obstacle avoidance and squeeze motion [22]. Given the sufficient damping effect from the surrounding water, the dynamics of underwater robots is relatively slow, which also indicates the easier controllability of the body balance compared to that of legged robots. However, the atmosphere has almost no resistance and buoyancy in most cases, which indicates that aerial robots are required to generate sufficient propulsion forces and a real-time control framework to keep their balance in the air.

1.1.2. Modular Aerial Robots

To achieve the snake-like motion in the air, a modular configuration is also necessary for the aerial robot. The aerial modular structure was first proposed in Distributed Flight Array [23], which introduces a modular flight unit composed of a single propeller. These flight units self-assemble on the ground before takeoff. Although arbitrary assembly shapes are available, the robot cannot change its shape in the air. Then, ModQuad was developed by [24] to enable self-assembly and self-disassembly in the air to provide the opportunity to change shape in the air. However, such a modular robot still has no ability to perform snake-like motion during a flight due to the lack of the joint structure.
Several modular aerial robots with joint connections were also proposed. For instance, a reconfigurable ModQuad connects modular quadrotors in a manner of a closed loop shape [25]. One of the effective applications of this closed-loop shape is to grasp objects using the inside ring structure. However, snake-like motion requires a chained configuration. Then, quadrotors with a chained configuration were proposed by [26], which shows the ability to squeeze narrow space using the snake-like motion. Similarly, a chained aerial robot that was composed of fully actuated flight units was developed by [27], which showed a high freedom of transformation in the air and also demonstrated aerial manipulation with the fixed-root link [28]. A common feature of these robots is that each flight unit has a complete flight ability, since there are more than four propellers in the unit. On the contrary, an articulated aerial robot proposed in [29] has a single propeller in each unit, which indicates the minimum actuators for snake-like motion in the air. However, the motion is only two-dimensional due to the under-actuated property.
To achieve greater maneuvering with joint motion in the air, a unique thrust vectoring apparatus with a dual-rotor was proposed in [16], which resulted in a snake-like aerial robot called DRAGON. This robot has two DoF in each joint module, which enables the highest freedom in both aerial maneuvering and manipulation [30,31]. However, this proposed mechanical design was only validated in four-link type, and the feasibility with fewer links that is an under-actuated model is unknown. Although a similar configuration was applied in the two-link model presented in [32], this robot only showed the stability with the fixed root link, and the flight stability has not been achieved yet. Therefore, the aim of this work was to obtain a generalized design, and modeling and control methods for arbitrary link numbers that can be either under- or fully actuated.

1.2. Contributions

Based on our previous works in [16,30,31,32], we propose the generalized methodologies for both under-actuated and fully actuated models that can be summarized as follows:
  • We introduced a generalized design for snake-like aerial robots, including a thrust vectoring apparatus with dual rotors that can generate different thrust forces.
  • We presented a generalized modeling method for articulated aerial robots based on an approximated model and further proposed two different actuator allocation strategies according to the number of vectoring apparatus.
  • We developed a generalized control framework that utilizes the proposed actuator allocation to enable the stable flight for both under-actuated and fully actuated models.
  • We performed experiments with two different platforms, as shown in Figure 1, to demonstrate the feasibility of the proposed design, and modeling and control methods for the flight with joint motion in midair.
We did these things to validate our proposed modeling and control methods, and achieve stable flight for both two and four-link types.

1.3. Notation

All the symbols in this paper are explained upon first appearance. Boldface symbols (most are lowercase, e.g., r ) denote vectors, whereas non-boldface symbols (e.g., m or I) denote either scalars or matrices. A coordinate regarding a vector or a matrix is denoted by a left superscript, e.g., { A } r expresses r with reference to (w.r.t.) the frame { A } . We define { W } as a unique frame to represent the inertial reference frame. Then, subscripts are used to express: a target frame for a vector or matrix; e.g., { W } r { A } represents the 3D position of the frame { A } w.r.t { W } —and/or a relation or attribute for a scalar; e.g., { W } r { A } x represents the scalar position of the frame { A } along the x axis of the frame { W } .

1.4. Organization

The remainder of this paper is organized as follows. The generalized design for snake-like aerial robot is described in Section 2. Then, the generalized modeling method is presented in Section 3, which is followed by the generalized control framework in Section 4. Finally, we show the flight experiments using an under-actuated and a fully actuated robot in Section 5. The conclusions are summarized in Section 6.

2. Generalized Design

In this section, we propose a generalized design of an articulated aerial robot with distributed rotors, as shown in Figure 2A. Here, the main link configuration of the proposed robot is cylindrical, which is connected by an actuated joint to enable the snake-like motion.

2.1. Dual-Rotor Vectoring Apparatus

For a stable flight of this robot, the design of the thrust apparatus is significantly important. We put effort on the design of the minimal thrust apparatus that enables stable flight for an arbitrary number of links, which is based on the following two aspects: the vectoring DoF and the rotor number.
For the vectoring DoF, we consider a 2-DoF vectoring apparatus to achieve the three dimensional thrust force. As shown in Figure 2B, this concept is achieved by equipping two perpendicular vectoring angles ( ϕ j , θ j ). This allows the thrust force to point any direction in arbitrary posture and maximize its performance in the flight control. This pair of vectoring axes are controlled by two independent servos with a general PID position control to track the desired angles. On the other hand, θ i = ± 90 would cause a singularity, because the thrust force can only point along the direction of link rod, regardless of the change in ϕ i .
Next, we determine the number of rotors on a vectoring apparatus. To achieve the minimal configuration, the number of rotors should be as low as possible. For a single rotor deployment, the optimal rotor position should be { F j } , as shown in Figure 2B, which, however, would collide with the vectoring shaft. Furthermore, only a single rotor in each vectoring apparatus (that is in each link module) would also induce the singular configuration that cannot fly, such as the straight-line configuration. Therefore, we use a dual-rotor structure, as shown in Figure 2B, and allow the rotors to generate different thrusts. Then, the articulated robots with distributed rotors can fly in a straight-line configuration with more than two vectoring apparatuses. It is notable that the number of the vectoring apparatuses is not necessarily deployed in all links, and the relative position in each link is also arbitrary. Nevertheless, deployment at the center of the link can provide a better weight balance than other position.

2.2. Two-DoF Joint Module

To achieve a snake-like motion, the DoF of the link pose w.r.t. the neighboring link should be more than two, which implies two orthogonal joints are necessary between two links. Therefore, we introduce a composite 2-DoF joint module shown in Figure 2C that consists of two identical single joint structures and an inter connection part. The first joint rotates about the pitch axis that corresponds to the angle of q i _ p i t c h , and the second joint rotates about the orthogonal yaw axis that corresponds to the angle of q i _ y a w . Each single joint is actuated by a servo independently. Similarly to the servo for the vectoring apparatus, the general PID position control is used for joint motion.
Two typicals model based on the proposed design are depicted in Figure 3. From the next section on, we will discuss the dynamics and control for those models.

3. Generalized Modeling Method

In our work, we address the articulated model with more than two links. To achieve the aerial transformation by such a multilinked model, a comprehensive investigation on modeling is important. In this section, we first describe the approximation method to obtain the simplified multilinked model, and then present the actuator allocation for both under-actuated and fully actuated models.

3.1. Approximation Model

As shown in Figure 2, the kinematic model of the proposed aerial robot is composed from a chained link structure. We assume the number of links is N L ; then the vectoring of joint angles q R 2 ( N L 1 ) can be defined as q : = q 1 _ yaw , q 2 _ pitch , q 2 _ yaw , q 2 _ pitch , . The thrust vectoring apparatus, as shown in Figure 2B, consists of two vectoring angles ( θ j , ϕ j ) and dual rotors that generate two thrust forces ( λ j 1 , λ j 2 ). Therefore, there are four control inputs, θ j , ϕ j , λ j 1 , and λ j 2 , in each vectoring apparatus, and we developed two different usage patterns for the under-actuated and fully actuated models, respectively. It is also notable that the vectoring apparatus is not necessarily deployed in each link module, as shown in Figure 2A. Therefore, the number of rotors, N r , can be different from 2 N L .
Then, the dynamic model of such multilinked model w.r.t. the entire CoG frame { C o G } can be written as follows:
{ W } P ˙ ( q , q ˙ , ϕ , ϕ ˙ , θ , θ ˙ ) = { W } R { C o G } { C o G } f m g ,
{ C o G } L ˙ ( q , q ˙ , ϕ , ϕ ˙ , θ , θ ˙ ) = { C o G } τ ,
M J ( q ) q ¨ + c ( q , q ˙ ) = τ q + i = 1 N r J r i T f i + i = 1 N s J s i T m s i g ,
where the first equation denotes the dynamic motion of the entire linear momentum, which is described in the inertial frame { W } , whereas the second equation denotes the dynamic motion of the entire rotational momentum, which is described in the CoG frame of the entire multibody model (i.e., { C o G } ). The third equation corresponds to the joint motion. g is a three-dimensional vector expressing gravity.
{ W } P and { C o G } L on the left sides of (1) and (2) are the total linear and angular momentum, respectively, which are both affected by the joint angles, vectoring angles, and their velocities, whereas { C o G } f and { C o G } τ on the right sides are the total wrench obtained from all vectored thrust forces. The allocation from the vectored thrust forces from this wrench is the key to achieving the flight control, which is described in Section 3.2 in detail.
In Equation (3), M J ( q ) denotes the inertial matrix, whereas c ( q , q ˙ ) is the term related to the centrifugal and Coriolis forces in joint motion. The symbol " s " stands for "segment" in multilinks. J r i R 3 × N J and J s i R 3 × N J are the Jacobian matrices for the frames of the i-th rotor and the i-th segment’s CoG, respectively. τ q R N J is the vector of joint torque, and f i denotes the three dimensional force generated by each vectored rotor.
The entire dynamics model summarized in (1)∼(3) shows the high complexity due to the joint motion, and thus the real-time feedback control based on such a nonlinear model is significantly difficult. Therefore, a crucial quasi-static assumption is introduced in our work to simplify the dynamics; i.e., all the joints are actuated well and slowly by servos ( q ˙ 0 ; q ¨ 0 ). Then, the joint velocity and acceleration can be omitted regardless of the joint motion. Under this assumption, the original dynamic model can be approximated as follows:
m Σ { W } r ¨ { C o G } ( q ) = { W } R { C o G } { C o G } f m Σ g ,
{ C o G } I Σ ( q ) { C o G } ω ˙ + { C o G } ω × { C o G } I Σ ( q ) { C o G } ω = { C o G } τ ,
0 = τ q + i = 1 N r J r i T f i + i = 1 N s J s i T m s i g ,
where { W } r { C o G } , { W } R { C o G } , and { C o G } ω are the position, attitude, and angular velocity of the CoG frame calculated based on the forward-kinematics from the root link states (i.e., { W } r { L 1 } , { W } r ˙ { L 1 } , { W } R { L 1 } , and { L 1 } ω ) with joint angles q .
Equations (4) and (5) still show the properties of the time-variant model because q changes over time and affects both the cog position { W } r { C o G } ( q ) and the overall rotational inertia I Σ ( q ) . (6) shows the equilibrium between the joint torque, thrust force, and gravity, which can help us to obtain the desired joint torque from the thrust force. Given that we assume that joints are well controlled by the feedback position control of servos, it is indicated that there is no necessity to perform torque control based on (6). By ignoring (6), the whole model for control can be finally considered as a single rigid body by our approximation.

3.2. Actuator Allocation

Allocation from the three-dimensional thrust forces f i to the CoG wrench { C o G } w ( : = { C o G } f { C o G } τ T ) provides the connection from the whole body feedback control to the actuators that includes the thrust force λ and vectoring angles θ and ϕ .
The force gap ( λ j 1 λ j 2 ) from the dual rotors, as shown in Figure 2B, would induce a moment load on the servo that controls the vectoring angle ϕ . Since this vectoring servo should be compact and thus weak, it is considered difficult to dynamically control both the vectoring angle ϕ j and the thrust forces λ j 1 and λ j 2 at the same time.
Therefore, we developed two different strategies as follows: (1) a dual-rotor mode that allows different forces for λ j 1 and λ j 2 , but the vectoring angle ϕ j is constant in control framework; (2) a virtual-single-rotor mode that assigns the same force for λ j 1 and λ j 2 to avoid the moment load on vectoring angle ϕ i , and thus, we can use ϕ i as the control input.

3.2.1. Dual-Rotor Mode

The force and torque related to the j-th rotor module can be written as:
(7) { C o G } f j = λ j { C o G } u j , { C o G } τ j = λ j ( { C o G } u { F j } ( q , ϕ j ) × { C o G } u j + κ σ j u j ) , (8) = λ j { C o G } v j ,
where ∗ denotes the index of the rotor, which is either 1 or 2. u j is the thrust unit normal, κ is the ratio of rotor thrust to its drag, and σ j is the rotational direction of each rotor. { C o G } u { F j } ( q , ϕ j ) is the rotor position that is affected by the joint angles q and the vectoring angle ϕ j . Then, the relationship between the target wrench and rotor thrust can be expressed by
{ C o G } w = j = 1 N ˜ r ( { C o G } f j 1 + { C o G } f j 2 ) j = 1 N ˜ r ( { C o G } τ j 1 + { C o G } τ j 2 ) = Q λ ,
(10) Q = { C o G } u 11 { C o G } u 12 { C o G } u N ˜ r 2 { C o G } v 11 { C o G } v 12 { C o G } v N ˜ r 2 , λ = λ 11 λ 12 λ N ˜ r 2 T ,
where N ˜ r = N r 2 is the number of rotor apparatus, and { C o G } u j , { C o G } v j and λ j correspond to (7) and (8).

3.2.2. Virtual-Single-Rotor Mode

Given that the dual rotors generate the same thrust forces, there is no moment that occurs in the vectoring angle ϕ . Then, we can count the pair of rotors as an integrated rotor that generates a combined uni-directional thrust λ j = λ j 1 + λ j 2 . In addition, the drag moment and gyroscopic moment can be ideally counteracted. Then, the force { C o G } f j and torque { C o G } τ j related to the j-th rotor module can be written as:
{ C o G } f j = λ j { C o G } R { L j } ( q ) { L j } R { G i _ roll } ( ϕ j ) { G j } R { F j } ( θ j ) b 3 , (11) = λ j { C o G } u j ,
{ C o G } τ j = λ j { C o G } u { F j } ( q , ϕ j ) × { C o G } u j , (12) = λ j { C o G } v j ,
where b 3 = 0 0 1 T . Definitions of the frames { L j } , { G j } , and { F j } can be found in Figure 2B. { C o G } u { F j } in (12) is the position of the frame { F j } , which depends on the joint angles q and the vectoring roll angle ϕ j because there is an offset from { G j } to { F j } , as shown in Figure 2C.
Then, the total wrench in the CoG frame can be given by
{ C o G } w = i = 1 N ˜ r { C o G } f j i = 1 N ˜ r { C o G } τ j = Q λ ,
(14) Q = { C o G } u 1 { C o G } u 2 { C o G } u N ˜ r { C o G } v 1 { C o G } v 2 { C o G } v N ˜ r , λ = λ 1 λ 2 λ N ˜ r T ,
where { C o G } u j , { C o G } v j and λ j correspond to (11) and (12).
If allocation matrix Q in (13) is full-rank, an arbitrary wrench { C o G } w can be achieved by the control input of λ j , ϕ j , and θ j , which can be considered fully actuated. If a model has more than two rotor vectoring apparatuses, the full pose control can be achieved by using this allocation mode. However, only two apparatuses imply the bijection between six control input (i.e., λ 1 , λ 2 , ϕ 1 , ϕ 2 , θ 1 , and θ 2 ) and full pose motion SE ( 3 ) , which can easily result in a control input that exceeds the valid range, especially for the thrust force λ . However, for a model with more than three vectoring apparatuses, there is the redundancy in control input. Therefore, we apply the dual-rotor mode for model with two vectoring apparatuses and the virtual-single-rotor mode for other cases.

4. Generalized Control Framework

4.1. Common Framework

Based on the approximated model and the allocation strategy proposed in Section 3, we present a common framework for both under-actuated and fully actuated models, as shown in Figure 4, which contains the first part for the pose control in the entire CoG motion, which is followed by the control allocation with the allocation strategies proposed in Section 3.2.

4.2. Full Pose Control

For the approximated dynamics (4) and (5), feedback control based on a common PID control is applied as follows:
{ C o G } f d e s = m Σ { W } R { C o G } T ( K f , p e r + K f , i e r + K f , d e ˙ r ) + m Σ g
e r = { W } r { C o G } d e s { W } r { C o G } ,
where K f , are the PID gain diagonal matrices.
The attitude control follows the SO ( 3 ) control method proposed by [33]:
{ C o G } τ d e s = I Σ ( K τ , p e R + K τ , i e R + K τ , d e ω )
e R = 1 2 R T R d e s R d e s T R ,
e ω = R T R d e s ω d e s ω ,
where 🟉 is the inverse of a skew map, and R : = { W } R { C o G } , ω : = { C o G } ω for convenience.
The efficiency of this full pose control ((15) and (17)) for the fully actuated model has been validated in [31], and thus we extend the usage to the under-actuated model with a proper control allocation in this work.

4.3. Control Allocation

4.3.1. Under-Actuated Model

To stabilize the attitude and altitude for the under-actuated model, a truncated desired wrench can be given by
w ˜ d e s = { C o G } f z d e s { C o G } τ d e s .
A truncated allocation matrix Q ˜ from (21) is also introduced as follows:
Q ˜ = { C o G } u z 11 { C o G } u z 12 { C o G } u z N ˜ r 2 { C o G } v 11 { C o G } v 12 { C o G } v N ˜ r 2 ,
where { C o G } u z j is the third element of { C o G } u j .
Then, the desired thrust forces λ d e s can be given by
λ = Q ˜ # w ˜ d e s
where ( · ) # denotes the weighted MP-pseudo-inverse. For under-actuated position control in the horizontal directions, the attitude in the roll and pitch directions is generally utilized. However, the proposed under-actuated robot can use both attitude and vectoring apparatus angles for x and y control. Note that we assume that these angles are sufficiently small, and these angles do not affect the attitude and altitude control.
For the position control, the attitude in the roll and pitch angles can be expressed as follows:
ϕ d d e s = k ϕ { C o G } f d e s , x sin ψ d { C o G } f d e s , y cos ψ d m Σ g ,
θ d d e s = k θ { C o G } f d e s , x cos ψ d + { C o G } f d e s , y sin ψ d m Σ g ,
where ( ϕ d , θ d , ψ d ) are the XYZ-Euler angles of the CoG frame orientation.
For the proposed rotor-distributed robots, it is difficult to stabilize the flight in some configurations due to the large moment of inertia. To address this problem, we also use the i-th thrust vectoring angles θ j d e s , ϕ j d e s as follows:
θ i d e s = tan 1 n i , y n i , z ,
ϕ i d e s = tan 1 n i , x n i . y sin α j + n i , z cos α j ,
where n j is expressed by
n j = n v a , i | | n v a , i | | ,
n v a , i = L j C R k θ j ( { C o G } f d e s , x cos ψ d + { C o G } f d e s , y sin ψ d ) k ϕ j ( { C o G } f d e s , x sin ψ d { C o G } f d e s , y cos ψ d ) m Σ g .

4.3.2. Fully Actuated Model

The complete desired wrench can be summarized as follows:
w d e s = { C o G } f d e s { C o G } τ d e s .
The control objective is to calculate the desired thrust λ d e s and the desired vectoring angles ϕ d e s , θ d e s from the desired CoG wrench w d e s from (29). For a model with more than three rotor vectoring apparatuses (i.e., N ˜ r > 2 ), there is infinite solution of ( λ , ϕ , θ ) according to (13). Then, an optimal geometry allocation can be given by
min λ , θ , ϕ λ 2 ,
s . t . w d e s = Q ( θ , ϕ ) λ ,
where Q is derived from (14).
Given that (31) is a nonlinear constraint for this optimization problem, the computational cost is relatively large, and the calculation time would increase as N ˜ r becomes larger. Therefore, we developed an iterative solution using a gradient to guarantee the convergence to the optimal (or at least suboptimal) solution. We first follow the method proposed by [34], which utilizes the vectored forces f j R 3 from (11) as an intermediate variable and further defines a combined vector F = { L 1 } f 1 T { L 2 } f 2 T { L N r } f N ˜ r T T . Then, the above optimization problem can be rewritten as:
min F F 2 ,
s . t . w d e s = Q ˜ F ,
Q ˜ = Q ˜ c o l 1 Q ˜ c o l 2 Q ˜ c o l N r
Q ˜ c o l i = E 3 × 3 { C o G } u { F i } × { C o G } R { L i } ,
where E 3 × 3 is a 3 × 3 identity matrix and · × denotes the skew symmetric matrix of a three-dimensional vector.
Then, the closed-form for (32) and (33) and the desired thrust and vectoring angles can be directly given by:
F = Q ˜ # w d e s ,
λ j = { L j } f j ,
ϕ j = t a n 1 ( { L j } f j y { L j } f j z ) ,
θ j = t a n 1 ( { L j } f j x { L j } f j y s i n ( ϕ j ) + { L j } f j z c o s ( ϕ j ) ) .
Given the offset from the frame { G j } to frame { F j } in the two-DoF vectoring apparatus, as shown in Figure 2B, the result of vectoring angles ϕ and θ from (38) and (39) will change the position { C o G } u { F i } in (35) again. Thus, the results of (37)∼(39) will no longer satisfy the constraint (33) because Q ˜ has changed again.
Therefore, we introduce the residual term for (31) using the results of (37)∼(39), and also compute the derivative with respect to λ , ϕ , and θ :
ϵ = w d e s Q ( θ , ϕ ) λ ,
δ ϵ = J w δ λ δ ϕ δ θ T ,
J w = J w / λ J w / ϕ J w / θ ,
J w / λ = Q ( θ , ϕ ) R 6 × N r ,
J w / ϕ = w ϕ ( Q ( θ , ϕ ) λ ) ϕ R 6 × N r ,
J w / θ = w θ ( Q ( θ , ϕ ) λ ) θ R 6 × N r .
The partial derivative elements in (44) and (45) can be calculated from the multilinked kinematics model.
Our goal is to find a solution of λ , ϕ , and θ to guarantee zero ϵ . Then, we start from the initial values λ 0 , ϕ 0 , and θ 0 calculated from (37)∼(39), and perform the following linear iteration with the objective of minimizing j = 1 N ˜ r δ λ j 2 + δ ϕ j 2 + δ θ j 2 at each iteration:
λ k , ϕ k , θ k T = λ k 1 , ϕ k 1 , θ k 1 T + J w # ϵ k 1 ,
ϵ k = w d e s Q ( θ k , ϕ k ) λ k ,
where J w # is the psuedo-inverse matrix of J w , and k 0 , 1 , 2 , is the iteration number. The most computationally intensive operation in this iteration process is the calculation of the inverse matrix with a size of the 6 × 6 for J w # , which can be solved instantaneously for real-time control. In most of the cases, it only requires 2 or 3 iterations to get a sufficiently small value of ϵ (i.e., ϵ 10 6 ). This may be attributed to the initial values λ 0 , ϕ 0 , and θ 0 being relatively close to the convergent solution. We finally define the convergent solution as λ d e s , ϕ d e s , and θ d e s .

5. Experiments

In this section, we present the development of platforms based on the generalized design, modeling, and control methods, and further demonstrate the experimental results regarding the aerial transformation motion.

5.1. Platforms

We developed two different types of platforms: (1) an under-actuated robot with three links and two vectoring apparatuses and (2) a fully actuated robot with four links and four vectoring apparatuses. The main pipes of these robots were made of carbon-fiber-reinforced plastic (CFRP) whose diameter was 25 mm and thickness was 1mm, and the power cables were in these pipes. Thus, these links were connected by a joint unit made of aluminum plates. The onboard system diagram is summarized in Figure 5. The robot had an onboard computer and a main control board to perform the state estimation, flight controller, and motion planning. It is notable that the process of flight control can be divided into two parts: (1) process with heavy computation (e.g., the matrix inversion (22) and the iteration process (46)∼(47)) that performed in the onboard computer; (2) real-time process (e.g., attitude control (17)) that performed in the main control board. Here, the attitude was estimated using IMU on this board at the rate of 500 Hz, and the estimated error was less than 1 . In addition, an external motion capture system, of which the position estimated error was less than 1 mm, was applied in our experiment to obtain the position of the root link. Furthermore, each link was equipped with a small control board called neuron that connected with the main control board via control area network (CAN). The joints connecting these links were actuated by servo motors, of which the measurement error of joint angle was less than 0.1 .

5.1.1. Under-Actuated Model

The detailed configuration of the under-actuated platform is depicted in Figure 6. The under-actuated robot was composed of three links (root link, middle link, and end link), and root and middle links were equipped with vectoring apparatuses. The main specifications of this robot can be found in Table 1. The CPU of the onboard PC was an Intel m3-8100Y with quad cores. The joint servo motors were XH430-W350-R (Dynamixel, stall torque: 3.4 Nm), and the vectoring apparatus joints for ϕ and θ axes used XH430-W350-R and XL430-W250-T((Dynamixel, stall torque: 1.5 Nm)), respectively. Here, two vectoring apparatuses were the minimal configuration for the articulated robot flight. Furthermore, the diameter of the three-blade propeller was 5 inch, and the maximum thrust was up to 20 N when the voltage was 25.2 V.

5.1.2. Fully Actuated Model

A fully actuated platform was composed of four link modules with four rotor vectoring apparatus as shown in Figure 7. The main specifications of this robot can be found in Table 2. Furthermore, processes related to modeling, control, and motion planning were all performed inside the on-board compact computer, of which the CPU was an Intel Atom x7-Z8700 with quad cores. The main difference from the prototype developed in our previous work [16] was the propulsion system (i.e., rotor and propeller). We improved the thrust performance by increasing the blades number from 6 to 12. More blades resulted in slower rotation speed. Furthermore, we chose an inner rotor that has a KV rate of 2100 KV, which can significantly suppress the vibration due to the rotor high-speed rotation (i.e., 20,000∼30,000 RPM). Onboard batteries were deployed for the flight. Two LiHv batteries (1300 mAh, 22.8  V) were attached at each link to provide power for a pair of rotors, which enabled the maximum flight time of 3 min.

5.2. Flight Experiments

The main goal of the experiments in this work is to verify the feasibility of the proposed generalized modeling and control methods for both under-actuated and fully actuated models that are the crucial foundation to performing complex applications. Therefore, we focus on evaluation of the flight stability and robustness with a given joint motion.

5.2.1. Under-Actuated Robot

Aerial maneuvering with joint motion was evaluated with the under-actuated three-link robot. The configuration was changed during flight, as shown in Figure 8A. The under-actuated flight control framework, as described in Section 4.3.1, was used, and the control parameters used in the experiments are summarized in Table 3. The position control ran at 40 Hz on the onboard processor, whereas the attitude control ran at 200 Hz on the main control board.
Figure 8B–E plot the trajectories of thrust forces, joint angles, position, and attitude errors, respectively. In this experiment, the trajectories of thrust forces did not change significantly during hovering with joint motion, as shown in Figure 8B. Here, the joint trajectories q ( t ) changed from [ 0.0 , 0.0 , 0.0 , 0.0 ] to [ 0.6 , 0.0 , 1.2 , 0.0 ] , as shown in Figure 8C. During flight, this under-actuated robot achieved a stable configuration, and the position and attitude errors became less than around ± 0.2 m and ± 0.07 rad. The root mean square errors (RMSE) of the position and attitude are summarized in Table 4. During the configuration change, the flight stability could still be guaranteed, which demonstrated the feasibility of the proposed modeling and control methods for under-actuated model.
To evaluate the flight performance of the proposed snake-like aerial robot in high places, we further conducted an experiment that involved large elevation, as shown in Figure 9A. During this experiment, the robot ascended from the floor to the ceiling at the height of approximately 3.0 m, as plotted in Figure 9B. The position-tracking errors during the whole flight are plotted in Figure 9C; the RMSE were 0.099 , 0.035 , 0.058   m . This result not only verified the stability of the proposed snake-like aerial during the ascending motion, but also demonstrated an efficiency in the elevated terrain that is close to the ceiling.

5.2.2. Fully Actuated Robot

A large-scale aerial maneuvering with joint motion was evaluated with the fully actuated platform. Based on the motion planning method proposed in [30], we designed a joint trajectory that can squeeze a small opening in midair like a snake, as depicted in Figure 10. However, in the actual experiment, we omitted the opening and ceiling with the aim of providing a better visualization for the trajectory tracking, as shown in Figure 11. The fully actuated flight control framework, as described in Section 4.3.2, was used, and the control parameters used in the experiments are summarized in Table 5. Both the motion planning and flight control frameworks were performed on the onboard processor.
Figure 12, Figure 13, Figure 14 and Figure 15 plot the trajectories of the CoG pose, joint angles, rotor vectoring angles, and thrust forces, respectively. The trajectory of the z-axis of the CoG motion indicates an ascending motion, whereas other axes show more complex motion. Furthermore, the joints changed in a large range (i.e, 1.0 , 1.6 ), as shown in Figure 13, indicating the feasibility of complex maneuvering by our proposed robot platform. The maximum joint velocity was 0.31 rad/s. Although this velocity broke the quasi-static assumption that we applied in the modeling method, the flight stability during the joint motion was still guaranteed, which showed the robustness of our flight method for the joint motion in midair. The trajectories of the rotor vectoring angles ( ϕ , θ ) in Figure 15 and the thrust forces λ in Figure 15 showed the behavior of the outputs from the proposed flight framework, which contains the fluctuations that resulted from the D control term in both (15) and (16).
The RMSE of position and rotation control during the whole motion is summarized in Table 6. These results demonstrate the relatively high accuracy of full-pose tracking in the situation that involved joint motion, which indicated the feasibility of the modeling and control methods proposed in Section 3 and Section 4. Regarding the robustness against the external disturbance, we considered the ground effect. During the joint motion, the minimum distance from the floor to the lowest link was less than 0.2 m, which corresponds to the time of 4 in Figure 11. The lowest link had significantly higher interference caused by the downwash compared to other higher links, and this interference can be considered as an external force acting at the lowest link. Nevertheless, Figure 12 still demonstrated a relatively small deviation from the desired trajectory of the CoG pose, which indicated that our proposed control method can guarantee promising robustness against varying external disturbance.
The high trackability for the complex trajectory, as shown in Figure 12 and Figure 13, also indicated the potential to perform snake-like squeezing motion in midair, which can benefit the exploration in tight and elevated terrains, such as inspection between the plant pipelines in high place.
In terms of design, the above experiments demonstrated the feasibility of the proposed link unit equipped with a vectorable dual-rotor for different robot configurations. Although a similar articulated aerial robot proposed in [27] also achieved a snake-like motion in midair, the related link unit was composed of eight rotors, which led a larger size than ours. Therefore, our proposed link unit has a significant advantage in maneuvering in tight terrain that was verified in the experiment of Figure 11.

6. Conclusions

In this paper, we first presented a generalized design to achieve the configuration of a snake-like aerial robot where the dual-rotor vectoring apparatus is the key feature. Then, a generalized modeling method for the articulated aerial robot based on an approximated model was presented. According to the number of rotor vectoring apparatuses, under-actuated and fully actuated models were further derived, which resulted in two different allocation strategies. Furthermore, a generalized control framework was developed to support both under-actuated and fully actuated models. Finally, two different platforms were built to perform experiments that involved the joint motion in midair and demonstrated the feasibility of our proposed methods.
An important improvement in the control method is the switch between the dual-rotor and virtual-single-rotor modes, as presented in Section 3. Given the switch can cause a discontinuous change in the rotor’s thrust, the flight may become unstable after the transition. Then, it is necessary to develop an interpolation approach to switch between these two modes smoothly. Another key issue that remains in this work is the feasibility of our design, modeling, and control methods for configuration with more links (e.g., >4). A possible problem with a large link number is the elastic vibration due to the lack of bending and torsional rigidity of the link structure. We will utilize the redundancy of the control input to suppress the elastic vibration according to the additional control method presented in [35]. Furthermore, the self-localization is another crucial challenge for this articulated structure, and sensor fusion using the multimodal sensors distributed in each link can be developed in the future. Last but not least, more evaluations of our articulated aerial platform in the field will be performed in future work to demonstrate the advantages of snake-like structure and motion in the aerial domain. Aside from the snake-like squeezing motion for inspection in the tight and elevated terrains, the whole body grasping that imitates snake coiling can be investigated to achieve large object transportation.

Author Contributions

Conceptualization, M.Z.; methodology, M.Z. and T.N.; software, M.Z. and T.N.; development of the robots, M.Z. and T.N.; experiments, M.Z. and T.N.; writing—original draft preparation, M.Z. and T.N.; supervision, M.Z.; project administration, M.Z.; funding acquisition, M.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the JSPS Research Grant JP19H04188.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Gray, J. The Mechanism of Locomotion in Snakes. J. Exp. Biol. 1946, 23, 101–120. [Google Scholar] [CrossRef] [PubMed]
  2. Hirose, S. Biologically Inspired Robots: Serpentile Locomotors and Manipulators; Cave, P., Goulden, C., Eds.; Oxford University Press, Inc.: Oxford, UK, 1993. [Google Scholar]
  3. Klaassen, B.; Paap, K. GMD-SNAKE2: A snake-like robot driven by wheels and a method for motion control. In Proceedings of the 1999 IEEE International Conference on Robotics and Automation (Cat. No.99CH36288C), Detroit, MI, USA, 10–15 May 1999; Volume 4, pp. 3014–3019. [Google Scholar] [CrossRef]
  4. Borenstein, J.; Hansen, M.; Borrell, A. The OmniTread OT-4 serpentine robot—Design and performance. J. Field Robot. 2007, 24, 601–621. [Google Scholar] [CrossRef]
  5. Wright, C.; Johnson, A.; Peck, A.; McCord, Z.; Naaktgeboren, A.; Gianfortoni, P.; Gonzalez-Rivero, M.; Hatton, R.; Choset, H. Design of a modular snake robot. In Proceedings of the 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems, San Diego, CA, USA, 29 October–2 November 2007; pp. 2609–2614. [Google Scholar] [CrossRef]
  6. Ostrowski, J.; Burdick, J. Gait kinematics for a serpentine robot. In Proceedings of the IEEE International Conference on Robotics and Automation, Minneapolis, MN, USA, 22–28 April 1996; Volume 2, pp. 1294–1299. [Google Scholar] [CrossRef]
  7. McIsaac, K.; Ostrowski, J. Motion planning for anguilliform locomotion. IEEE Trans. Robot. Autom. 2003, 19, 637–652. [Google Scholar] [CrossRef]
  8. Burdick, J.; Radford, J.; Chirikjian, G. A ‘sidewinding’ locomotion gait for hyper-redundant robots. In Proceedings of the IEEE International Conference on Robotics and Automation, Atlanta, GA, USA, 2–6 May 1993; Volume 3, pp. 101–106. [Google Scholar] [CrossRef]
  9. Chang, A.H.; Vela, P.A. Shape-centric modeling for control of traveling wave rectilinear locomotion on snake-like robots. Robot. Auton. Syst. 2020, 124, 103406. [Google Scholar] [CrossRef]
  10. Liu, L.; Guo, X.; Fang, Y. A Reinforcement Learning-Based Strategy of Path Following for Snake Robots with an Onboard Camera. Sensors 2022, 22, 9867. [Google Scholar] [CrossRef] [PubMed]
  11. Transeth, A.A.; Leine, R.I.; Glocker, C.; Pettersen, K.Y.; LiljebÄck, P. Snake Robot Obstacle-Aided Locomotion: Modeling, Simulations, and Experiments. IEEE Trans. Robot. 2008, 24, 88–104. [Google Scholar] [CrossRef] [Green Version]
  12. Crespi, A.; Badertscher, A.; Guignard, A.; Ijspeert, A.J. AmphiBot I: An amphibious snake-like robot. Robot. Auton. Syst. 2005, 50, 163–175. [Google Scholar] [CrossRef]
  13. Yu, S.; Ma, S.; Li, B.; Wang, Y. An amphibious snake-like robot: Design and motion experiments on ground and in water. In Proceedings of the 2009 International Conference on Information and Automation, Zhuhai, China, 22–24 June 2009; pp. 500–505. [Google Scholar] [CrossRef]
  14. Zhang, J.; Chen, Y.; Liu, Y.; Gong, Y. Dynamic Modeling of Underwater Snake Robot by Hybrid Rigid-Soft Actuation. J. Mar. Sci. Eng. 2022, 10, 1914. [Google Scholar] [CrossRef]
  15. Socha, J.J. Gliding flight in the paradise tree snake. Nature 2002, 418, 603–604. [Google Scholar] [CrossRef] [PubMed]
  16. Zhao, M.; Anzai, T.; Shi, F.; Chen, X.; Okada, K.; Inaba, M. Design, Modeling, and Control of an Aerial Robot DRAGON: A Dual-Rotor-Embedded Multilink Robot with the Ability of Multi-Degree-of-Freedom Aerial Transformation. IEEE Robot. Autom. Lett. 2018, 3, 1176–1183. [Google Scholar] [CrossRef]
  17. Mori, M.; Hirose, S. Three-dimensional serpentine motion and lateral rolling by active cord mechanism ACM-R3. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, Lausanne, Switzerland, 30 September–4 October 2002; Volume 1, pp. 829–834. [Google Scholar] [CrossRef]
  18. Hirose, S.; Morishima, A.; Tukagosi, S.; Tsumaki, T.; Monobe, H. Design of practical snake vehicle: Articulated body mobile robot KR-II. In Proceedings of the Fifth International Conference on Advanced Robotics ’Robots in Unstructured Environments, Pisa, Italy, 19–22 June 1991; Volume 1, pp. 833–838. [Google Scholar] [CrossRef]
  19. Koopaee, M.J.; Pretty, C.; Classens, K.; Chen, X. Dynamical Modelling and Control of Snake-Like Motion in Vertical Plane for Locomotion in Unstructured Environments. In Proceedings of the International Design Engineering Technical Conferences and Computers and Information in Engineering Conference, Anaheim, CA, USA, 18–21 August 2019; Volume 9. 15th IEEE/ASME International Conference on Mechatronic and Embedded Systems and Applications. [Google Scholar] [CrossRef]
  20. Iguchi, Y.; Nakajima, M.; Ariizumi, R.; Tanaka, M. Step Climbing Control of Snake Robot with Prismatic Joints. Sensors 2022, 22, 4920. [Google Scholar] [CrossRef] [PubMed]
  21. Yamada, H.S. Development of amphibious snake-like robot acm-r5. In Proceedings of the 36th International Symposium on Robotics (ISR 2005), Tokyo, Japan, 29 November–1 December 2005. [Google Scholar]
  22. Liljebäck, P.; Mills, R. Eelume: A flexible and subsea resident IMR vehicle. In Proceedings of the OCEANS 2017, Aberdeen, UK, 19–22 June 2017; pp. 1–4. [Google Scholar] [CrossRef]
  23. Oung, R.; D’Andrea, R. The Distributed Flight Array: Design, implementation, and analysis of a modular vertical take-off and landing vehicle. Int. J. Robot. Res. 2014, 33, 375–400. [Google Scholar] [CrossRef]
  24. Saldaña, D.; Gabrich, B.; Li, G.; Yim, M.; Kumar, V. ModQuad: The Flying Modular Structure that Self-Assembles in Midair. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, Australia, 21–25 May 2018; pp. 691–698. [Google Scholar] [CrossRef]
  25. Gabrich, B.; Saldaña, D.; Kumar, V.; Yim, M. A Flying Gripper Based on Cuboid Modular Robots. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, Australia, 21–25 May 2018; pp. 7024–7030. [Google Scholar] [CrossRef]
  26. Nguyen, H.; Dang, T.; Alexis, K. The Reconfigurable Aerial Robotic Chain: Modeling and Control. In Proceedings of the 2020 International Conference on Robotics and Automation (ICRA), Paris, France, 31 May–31 August 2020; pp. 5328–5334. [Google Scholar]
  27. Park, S.; Lee, Y.; Heo, J.; Lee, D. Pose and Posture Estimation of Aerial Skeleton Systems for Outdoor Flying. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 704–710. [Google Scholar] [CrossRef]
  28. Yang, H.; Park, S.; Lee, J.; Ahn, J.; Son, D.; Lee, D. LASDRA: Large-Size Aerial Skeleton System with Distributed Rotor Actuation. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, Australia, 21–25 May 2018; pp. 7017–7023. [Google Scholar] [CrossRef]
  29. Zhao, M.; Kawasaki, K.; Okada, K.; Inaba, M. Transformable multirotor with two-dimensional multilinks: Modeling, control, and motion planning for aerial transformation. Adv. Robot. 2016, 30, 825–845. [Google Scholar] [CrossRef]
  30. Zhao, M.; Shi, F.; Anzai, T.; Okada, K.; Inaba, M. Online Motion Planning for Deforming Maneuvering and Manipulation by Multilinked Aerial Robot Based on Differential Kinematics. IEEE Robot. Autom. Lett. 2020, 5, 1602–1609. [Google Scholar] [CrossRef]
  31. Zhao, M.; Okada, K.; Inaba, M. Versatile articulated aerial robot DRAGON: Aerial manipulation and grasping by vectorable thrust control. Int. J. Robot. Res. 2022, 02783649221112446. [Google Scholar] [CrossRef]
  32. Nishio, T.; Zhao, M.; Shi, F.; Anzai, T.; Kawaharazuka, K.; Okada, K.; Inaba, M. Stable Control in Climbing and Descending Flight under Upper Walls using Ceiling Effect Model based on Aerodynamics. In Proceedings of the 2020 IEEE International Conference on Robotics and Automation (ICRA), Paris, France, 31 May–31 August 2020; pp. 172–178. [Google Scholar] [CrossRef]
  33. Lee, T.; Leok, M.; McClamroch, N.H. Geometric tracking control of a quadrotor UAV on SE(3). In Proceedings of the 49th IEEE Conference on Decision and Control (CDC), Atlanta, GA, USA, 15–17 December 2010; pp. 5420–5425. [Google Scholar]
  34. Kamel, M.; Verling, S.; Elkhatib, O.; Sprecher, C.; Wulkop, P.; Taylor, Z.; Siegwart, R.; Gilitschenski, I. The Voliro Omniorientational Hexacopter: An Agile and Maneuverable Tiltable-Rotor Aerial Vehicle. IEEE Robot. Autom. Mag. 2018, 25, 34–44. [Google Scholar] [CrossRef] [Green Version]
  35. Maki, T.; Zhao, M.; Okada, K.; Inaba, M. Elastic Vibration Suppression Control for Multilinked Aerial Robot Using Redundant Degrees-of-Freedom of Thrust Force. IEEE Robot. Autom. Lett. 2022, 7, 2859–2866. [Google Scholar] [CrossRef]
Figure 1. Snake-like aerial robots with proposed mudular design and generalized modeling and control methods. (Left) Under-actuated model with three links and two thrust vectoring apparatus. (Right) Fully actuated model with four links and four thrust vectoring apparatus.
Figure 1. Snake-like aerial robots with proposed mudular design and generalized modeling and control methods. (Left) Under-actuated model with three links and two thrust vectoring apparatus. (Right) Fully actuated model with four links and four thrust vectoring apparatus.
Sensors 23 01882 g001
Figure 2. (A) Generalized kinematics model of the proposed snake-like aerial robot. { L i } is a frame attached to the start point of the i-th link, and the x axis is aligned with the direction of link rod. The link does not necessarily contain the thrust vectoring apparatus (i.e., link3, link5, and link 7). (B) Two-DoF thrust vectoring apparatuses ( θ j , ϕ j ). { G j } is a frame attached to the origin of vectoring apparatus, and the x axis is aligned with the x axis of { L i } and rotates around it with ϕ j . { F j 1 } and { F j 2 } are the frames attached to the dual rotors, and { F j } is a frame in the middle of the them, where the z axis is parallel to the rotor rotation axis and is titled from the z axis of { G j } with θ j . λ j 1 and λ j 2 are the thrust forces generated by the dual rotors. (C) Two-DoF joint module composed of two orthogonal joint axes ( q i _ yaw , q i _ pitch ).
Figure 2. (A) Generalized kinematics model of the proposed snake-like aerial robot. { L i } is a frame attached to the start point of the i-th link, and the x axis is aligned with the direction of link rod. The link does not necessarily contain the thrust vectoring apparatus (i.e., link3, link5, and link 7). (B) Two-DoF thrust vectoring apparatuses ( θ j , ϕ j ). { G j } is a frame attached to the origin of vectoring apparatus, and the x axis is aligned with the x axis of { L i } and rotates around it with ϕ j . { F j 1 } and { F j 2 } are the frames attached to the dual rotors, and { F j } is a frame in the middle of the them, where the z axis is parallel to the rotor rotation axis and is titled from the z axis of { G j } with θ j . λ j 1 and λ j 2 are the thrust forces generated by the dual rotors. (C) Two-DoF joint module composed of two orthogonal joint axes ( q i _ yaw , q i _ pitch ).
Sensors 23 01882 g002
Figure 3. (A) Model equipped with three links and two vectoring apparatuses. (B) Model equipped with three links and two vectoring apparatuses.
Figure 3. (A) Model equipped with three links and two vectoring apparatuses. (B) Model equipped with three links and two vectoring apparatuses.
Sensors 23 01882 g003
Figure 4. Overview of the control framework developed in this work, which is a part of the whole system. “Model approximation” is presented in Section 3.
Figure 4. Overview of the control framework developed in this work, which is a part of the whole system. “Model approximation” is presented in Section 3.
Sensors 23 01882 g004
Figure 5. The onboard system diagram of the proposed snake-like aerial robots. The system is composed of three parts: (1) an onboard computer to perform the processes that require extensive computational resources; (2) main control board to perform real-time processes, such as the attitude estimate and control; (3) a neuron in each link module to transmit actuator commands from the main control board.
Figure 5. The onboard system diagram of the proposed snake-like aerial robots. The system is composed of three parts: (1) an onboard computer to perform the processes that require extensive computational resources; (2) main control board to perform real-time processes, such as the attitude estimate and control; (3) a neuron in each link module to transmit actuator commands from the main control board.
Sensors 23 01882 g005
Figure 6. Under-actuated robot platform with distributed rotors. This robot was composed of three links and two vectoring apparatuses, and the root and middle links were equipped with the vectoring apparatus. The two rotors on the vectoring apparatus generated different levels of thrust.
Figure 6. Under-actuated robot platform with distributed rotors. This robot was composed of three links and two vectoring apparatuses, and the root and middle links were equipped with the vectoring apparatus. The two rotors on the vectoring apparatus generated different levels of thrust.
Sensors 23 01882 g006
Figure 7. Snake-like aerial robot composed of four links and four rotor vectoring apparatuses. The link module contains two orthogonal joint units, and the dual-rotor vectoring apparatus with compact ducted fan rotors is deployed in each link.
Figure 7. Snake-like aerial robot composed of four links and four rotor vectoring apparatuses. The link module contains two orthogonal joint units, and the dual-rotor vectoring apparatus with compact ducted fan rotors is deployed in each link.
Sensors 23 01882 g007
Figure 8. (A) Flight of the under-actuated model that involved the configuration change. (B) Trajectories for the thrust forces λ . (C) Trajectories for the joint motion. (D) Position-tracking errors. (E) Attitude-tracking errors.
Figure 8. (A) Flight of the under-actuated model that involved the configuration change. (B) Trajectories for the thrust forces λ . (C) Trajectories for the joint motion. (D) Position-tracking errors. (E) Attitude-tracking errors.
Sensors 23 01882 g008
Figure 9. (A) Ascending of the under-actuated platform from the floor to the ceiling. (B) Trajectories for the CoG position during the flight. (C) Position-tracking errors.
Figure 9. (A) Ascending of the under-actuated platform from the floor to the ceiling. (B) Trajectories for the CoG position during the flight. (C) Position-tracking errors.
Sensors 23 01882 g009
Figure 10.  Joint motion to squeeze a small opening in midair. The width of opening is smaller than that of the robot under the normal form. In addition, a low ceiling also limits the free space. Therefore, a snake-like squeezing motion is required. 
Figure 10.  Joint motion to squeeze a small opening in midair. The width of opening is smaller than that of the robot under the normal form. In addition, a low ceiling also limits the free space. Therefore, a snake-like squeezing motion is required. 
Sensors 23 01882 g010
Figure 11.  Complex maneuvering by the proposed snake-like fully actuated aerial robot in midair. 
Figure 11.  Complex maneuvering by the proposed snake-like fully actuated aerial robot in midair. 
Sensors 23 01882 g011
Figure 12. Trajectories for the CoG pose in the motion of Figure 11. The comparison between the actual and desired trajectories show the relatively high accuracy of the pose tracking.
Figure 12. Trajectories for the CoG pose in the motion of Figure 11. The comparison between the actual and desired trajectories show the relatively high accuracy of the pose tracking.
Sensors 23 01882 g012
Figure 13.  Trajectories for the joint motion in the motion of Figure 11. 
Figure 13.  Trajectories for the joint motion in the motion of Figure 11. 
Sensors 23 01882 g013
Figure 14.  Trajectories for the rotor vectoring angles in the motion of Figure 11. 
Figure 14.  Trajectories for the rotor vectoring angles in the motion of Figure 11. 
Sensors 23 01882 g014
Figure 15.  Trajectories for the thrust force lambda in the motion of Figure 11. 
Figure 15.  Trajectories for the thrust force lambda in the motion of Figure 11. 
Sensors 23 01882 g015
Table 1. Main specifications for the under-actuated model.
Table 1. Main specifications for the under-actuated model.
AttributeDescription
Root Link 0.40 m
Middle Link 0.40 m
End Link 0.25 m
Total weight 3.35 kg
Propeller Diameter5 inch
Propeller Blades3
Max rotor thrust25 N
Max joint torque 7.0 Nm
Table 2. Main specifications for fully actuated model.
Table 2. Main specifications for fully actuated model.
AttributeDescription
Link length 0.42 m
Total weight 8.0 kg
Propeller Diameter70 mm
Propeller Blades12
Max rotor thrust32 N
Max joint torque 7.0 Nm
Table 3. Control gains for the under-actuated platform.
Table 3. Control gains for the under-actuated platform.
ParametersValue
K f , p diag [ 4.0 , 3.0 , 5.6 ]
K f , i diag [ 3.0 , 0.0005 , 3.0 ]
K f , d diag [ 7.0 , 1.5 , 3.6 ]
K τ , p diag [ 1.4 , 18.0 , 10.0 ]
K τ , i diag [ 0.3 , 0.3 , 0.3 ]
K τ , d diag [ 2.0 , 15.0 , 6.0 ]
k ϕ , k θ 1.0, 0.0
k ϕ i ( i = 1 , 2 ) 1.0, 0.0
k θ i ( i = 1 , 2 ) 0.0, 0.0
Table 4. The RMSE of the proposed under-actuated robot during flight.
Table 4. The RMSE of the proposed under-actuated robot during flight.
Position (m)Attitude (Rad)
x0.0760.033
y0.1800.063
z0.0600.062
Table 5. Control gains for fully actuated platfrom.
Table 5. Control gains for fully actuated platfrom.
ParameterValue
K f , p diag ( 3.6 , 3.6 , 2.8 )
K f , i diag ( 0.03 , 0.03 , 1.2 )
K f , d diag ( 4 , 4 , 2.8 )
K τ , p diag ( 15 , 15 , 10 )
K τ , p diag ( 0.3 , 0.3 , 0.1 )
K τ , d 5 E 3 × 3
Table 6. The RMSE of the proposed under-actuated robot during flight.
Table 6. The RMSE of the proposed under-actuated robot during flight.
Position (m)Attitude (Rad)
x0.0360.026
y0.0380.033
z0.0170.033
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zhao, M.; Nishio, T. Generalized Design, Modeling and Control Methodology for a Snake-like Aerial Robot. Sensors 2023, 23, 1882. https://doi.org/10.3390/s23041882

AMA Style

Zhao M, Nishio T. Generalized Design, Modeling and Control Methodology for a Snake-like Aerial Robot. Sensors. 2023; 23(4):1882. https://doi.org/10.3390/s23041882

Chicago/Turabian Style

Zhao, Moju, and Takuzumi Nishio. 2023. "Generalized Design, Modeling and Control Methodology for a Snake-like Aerial Robot" Sensors 23, no. 4: 1882. https://doi.org/10.3390/s23041882

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop