1. Introduction
The application of bio-inspired principles towards solving highly complex real world problems has been widely researched for the past couple of decades. Inspiration from nature has greatly advanced developments in mechanism design, overcoming conventional bottlenecks in field robotics. For instance, Jayaram and Full presented a cockroach exoskeleton inspired robot for search and rescue missions. The above mentioned robot uses a novel locomotion modality called ‘body friction legged crawling’ that mimics the cockroach’s ability to perform multiple modes of locomotion [
1]. Similarly, the work mentioned in [
2] discusses the achievement of static stability and leg co-ordination in robots by implementing insect inspired gait motion in the leg. The helical propulsion of E.coli bacteria is used for developing a micro robot system that performs locomotion on a viscous medium [
3]. From the author’s perspective, the above mentioned micro robot systems with bio-inspired navigation, have vast applications in the biomedical field in the near future. Since spiders perform multiple locomotion such as crawling, jumping and vertical surface climbing, the morphological features of spiders are mimicked in the mechanical design of the robots, such that varieties of locomotions can be achieved. For example, the Abigaille II hexapod robotic platform performs vertical climbing, by mimicking the spiders’ vertical climbing using their biological dry adhesives [
4]. Similarly, a spider-inspired leaping mechanism for jumping robots is mentioned in [
5].
Beyond application to robot locomotion, bio-inspired principles have been widely used for the development of novel control paradigms. The work mentioned in [
6] describes the development of a bio-inspired controller for a hexapod robot called ‘Walknet’, which uses artificial neural networks. The author also validated the functioning of the proposed controller using kinematic and dynamic simulations. Similarly, a bio-inspired neurodynamics-based tracking and control method is discussed in [
7] for achieving effective tracking and control for the real-time navigation of a non-holonomic mobile robot, in tracking scenarios with large tracking errors. According to the author, the bio-inspired tracking control method can yield zero initial velocity and smooth control signal generation. The biologically inspired spiking neuron-based robot navigation and control is discussed in the work mentioned in [
8]. In the above mentioned work, authors investigated the effective usage of a network of spiking neurons in obstacle avoidance, target approaching and visual cue based navigation scenarios.
The design philosophy of reconfiguration has been studied and applied to robotics since the early 1980s. Since then, a number of reconfigurable robotic systems have been proposed. Many practical applications prove that reconfigurability is a valuable design strategy. The wheel–track robot mentioned in [
9] for urban search and rescue operations epitomises the achievement of dynamic locomotion capability using the reconfigurable principle. The ability of the above mentioned robot to reconfigure itself in a 3D space opens the door for performing complex multi-terrain locomotion. Mechanical design, simulation and experimental validation of a reconfigurable modular hexahedron robot is discussed in [
10]. In the above mentioned scenario, the robot’s ability to reconfigure itself enables rotational locomotion in addition to the conventional rectilinear motion and clockwise–counterclockwise rotation using omnidirectional wheels. Nansai et al. have done consequential work on the dynamic walking gait generation using the reconfigurable Theo Jansen mechanism that enables the robot to traverse multiple terrains by varying the link length associated with it [
11,
12]. In addition to the adoption of a reconfigurable mechanism in the mechanical design and control, there are also attempts reported to integrate the bio-inspired principles in reconfigurability. The work mentioned in [
13] describes the realization of amphibious robots by means of reconfigurable legs. This work brings together the benefits of bio-inspired design and reconfigurable robotics towards achieving multi-modal locomotion and dynamic gait generation.
Authors also presented the development of the AmphiHex-I robot with a transformable flipper–leg that enables the composite propulsion mechanism to extend the robot’s locomotion ability from land to water. The work mentioned in [
14] discusses the development and simulation of the amphibious salamander robot that is capable of achieving multimode locomotion. In the above mentioned research work, authors demonstrated the application of a primitive neural network for swimming locomotion and its extension to recent limb oscillatory centres in order to explain the ability of salamanders to switch between walking and swimming. Furthermore, there is work reported on the development of a novel reconfigurable robot that can execute bio-inspired legged style locomotion by utilizing body articulation methods with passive leg attachments [
15].
This research work presents the development of a novel bio-inspired reconfigurable robot called Scorpio (
Figure 1) that can execute crawling, rolling and wall-climbing modes of locomotion. The novelty of our research work resides in the fruitful consolidation of bio-inspired principles and reconfigurable robot morphology that leads to the achievement of three complex modes of locomotion on a single miniaturised robot platform. This is the first ever attempt to integrate a crawling–rolling and wall-climbing mechanism on a single robot platform. The fundamental inspiration for the development of the Scorpio robot is from Cebranus Rechenbergi—a species that belongs to the huntsman spider family, commonly seen in the deserts of Morocco, that can perform the aforementioned three locomotion modes. The ability to crawl, roll and to climb a vertical wall surface enables the Scorpio robot to perform crawling over flat terrain, rolling over a slope and to extend its ability to explore terrains of various height levels by climbing walls. Hence, the Scorpio robot with crawling–rolling and wall-climbing capabilities can provide effective robotic solutions to urban reconnaissance.
The main challenges in designing the robot include the reconfigurable mechanism, gait control and power electronics integration, as well as the non-trivial process of implementing theoretical design generated analytically into a physical mechanism. All the above mentioned challenges are addressed in this paper, concluding with the experimental results that validate the proposed approach. The reconfigurable Scorpio robot that we put forward in this research work is an initial design towards the development of an autonomous self-reconfigurable robot platform able to shape shift its morphology according to the perceived terrain. The rest of this article is organized as follows: The section “Hardware Description” introduces the mechanism design and system architecture of the Scorpio robot. The section “Mathematical Model” discusses the kinematic and dynamic model of the Scorpio robot. The section “Experiments and Results” discusses the validation trials that we followed in the development of the Scorpio Robot. This article concludes with the section “Conclusion” that concludes the study and mentions some future works to be done in this field of research.
2. Hardware Description
The main scope of this research work is to develop a
Cebrennus rechenbergi spider-inspired rolling, crawling and wall-climbing robot. In terms of morphology, the Scorpio robot can be defined as a quadruped robot having a physical appearance that resembles a real spider. The whole robotic structure is developed and fabricated in a modular fashion, such that the prototype consists of three regions—robot body, limbs and wall-climbing appendages. The robot body has a dimension of
and height of
. The body of the Scorpio robot accommodates the control unit, power supply and sensing unit. The limbs of the robot are the multi-jointed, semi-circular structures with three DOF . The three degrees of freedom of the robotic limb is achieved by implementing three active joints powered by micro servo motors. The four legs are separated by an optimum distance of 105 mm from the body, which ensures the smooth transformation from rolling and crawling. The whole prototype is fabricated using 3D printing, in Poly Lactic Acid material. The limbs are printed as hollow structures to optimise the weight and tensile strength of the body.
Table 1 shows the complete specification of the Scorpio robot. The wall-climbing appendages mainly consist of a single DC geared motor, a pair of pedals and a system of gears enclosed within a chassis that can be attached to the body. The periodic pedalling motion enables the ascending and descending of the robot over a smooth wall surface. The whole prototype weighs 300 g and consumes less than 5 W of power over a working voltage of 7.4, which is supplied from a two celled 1100 mAh lithium polymer battery.
2.1. The Crawling Locomotion
The Scorpio robot performs the crawling locomotion based on the periodic drags, created by each of its leg, with the terrain. The controlled actuation of each servo motor forms the forward, reverse, clockwise and counterclockwise locomotion into a crawling locomotion pattern. Each limb of the Scorpio robot has three servo motors that can deliver rotational motion on the pitch, yaw and roll axis respectively. The gait generation of the Scorpio robot depends on the degrees of rotation of each of the motors.
Figure 2 shows a CAD diagram that presents an exploded view of the Scorpio robot’s limbs and their attachment to the body.
2.2. The Rolling Locomotion
The rolling locomotion in the Scorpio robot is achieved using the hemispherical limbs. Since the limbs of the Scorpio are symmetrical, the end-to-end placement of the limbs can form a circular shape that enables the rolling movement on flat and inclined terrains. The Scorpio robot uses two of its legs that touch the ground to push up the entire body. The vertical shift of the centre of gravity results in the robot rolling in either the clockwise or counterclockwise direction about an axis parallel to the terrain.
In the first half of the rotation, one servomotor on the first pair of limbs that has direct contact with the ground becomes engaged. Similarly, in the second half of the rotation, the servo motor in the second pair of limbs that has direct contact with the terrain after the half rotation becomes engaged.
Figure 3 shows the cylindrical posture of the Scorpio robot to achieve the rolling locomotion.
2.3. Wall Climbing
The wall-climbing ability of the Scorpio robot depends on two principles. The first one involves the use of micro suction cups from Air Stick that establish a stable bond between the Scorpio robot and the perpendicular wall surface. The surface of the tape has thousands of microscopic air pockets that create partial vacuums between the tape and the target surface. The tape used for adhesion in the Scorpio robot is not pressure-sensitive and leaves no residue behind. It can also be used repeatedly, multiple times, without losing its holding power.
The second one is the principle of the atrial bipedal locomotion mechanism, often found in apes, that helps in the ascending and descending of our Scorpio robot. This is realised through micro-suction-enabled closed link legs that move synchronously with the central trunk. The implemented bipedal mechanism uses only a single motor to generate synchronized pedalling. The major components used for the bi-pedal mechanism are, a 7.4 V Pololu DC motor, three pairs of offset wheels and three shafts. The DC motor is engaged to the centre shaft using a spur gear mechanism. The DC motor is driven by the Pololu micro DC motor controller. Pedals are attached at the end of the offset wheels which generates the synchronized pedalling action. The clockwise and counterclockwise rotation of the DC motor induce the forward and reverse peddling.
Figure 4 shows isometric view of the wall-climbing appendages that can be attached to the Scorpio robot.
2.4. Scorpio Robot: System Architecture
The system architecture diagram of Scorpio is shown in
Figure 5. We used Arduino Pro mini, which contains an ATMEGA 328 on-board microcontroller IC as the processing unit. The peripheral devices of the micro controller are Inertia Measurement Unit (IMU) sensors, the Pololu maestro servo controller and DC motor controller. The Pololu maestro is a programmable servo controller, which is capable of driving 18 servo motors. The DC gear motor is controlled by the Pololu micro DC motor controller. The communication between the DC motor controller and Arduino Pro mini is established using the serial communication protocol. The motor controller generates 8-bit PWM signals that specify the rotation speed of the motor associated with it. The connection between the servo controller and the Arduino is established using Serial communication methods. The robot system also incorporates an Adafruit EZ link Bluetooth transceiver that accepts the commands from an external device in a wireless fashion. Hence, the gait transformation and locomotion control of the Scorpio Robot can be done in a teleoperated fashion, or autonomously using a PC in linux platform with ROS (Robot Operating System).
3. Mathematical Model
This section deals with the kinematic and dynamic model of the Scorpio robot. We use the quaternion composed of four numerical elements as a tool for the mathematical formulation of the Scorpio robot. The quaternion indicates the orientation of Scorpio on a 3D space without the help of trigonometric functions in order to avoid the singular posture comparison with Euler angles.
For indicating the robot’s position and orientation on the global frame, the following variables have to be defined. Absolute position vector . Quaternion . In addition to this, a generalized position vector is defined as . (* can be replaced by an object identifier such as b, l1, l2, l3 respectively.)
Figure 6 describes the frame assignment for the Scorpio leg parameters. We assume a frame
R located at the center of the robot body and the Scorpio leg components are fixed as the reference frame. The origin of the frame
R corresponds to the center of gravity of the body and the components. In addition to this, a global frame
G is also assigned.
3.1. Quaternion
In this section, the quaternion [
16,
17] is defined as
and the quaternion norm is defined as
.
The product of quaternions
and
can be represented as,
where the operator ∘ means the product for the quaternions. The operators · and × represent the inner product and outer product of the quaternions.
The conjugate quaternion
is represented as,
and the inverse quaternion
is represented as
The inverse quaternion gives
, where
can be in the form of
.
A quaternion for expressing rotation can be represented as,
where
can be a unit vector of the rotation axis,
,
, and
is a rotation angle of the unit vector.
A transformed position vector is derived by performing the following calculations.
where
is a position vector that is written as
. Note that the inverse of a quaternion for rotation yields
. On the other hand, the transformed coordinate space is derived by performing calculations as follows:
3.2. Kinematic Equations
The first component (l1) of a leg position is represented using the following relations, such as the body (b) position, the robot orientation and the first component orientation. Let
be a conversion matrix for defining the use of the quaternions to formulate the orientation. The above mentioned conversion matrix can be represented as
Let
and
be the vectors for indicating the positional relations of each component in the initial state (See
Figure 6). The vectors
and
are defined as,
Using (
1)–(
3), the first component’s position (
) can be represented as,
The first component orientation conveys the information of the body orientation and the relative angle between the body and the component. Let
be the relative angle between the body and the component, This angle is more or less the same as the servo rotation angle. Thus, the first component’s conversion matrix
can be written as,
where the matrix
represents the rotation about the Z axis. Moreover, the first component orientation is derived by performing calculations on the quaternion as shown below
Since we have the quaternions
and
, the relative angle
can be obtained from,
Similarly, the second component position
is represented as
and the positional relations vector
is defined as
In the same way, the second component of orientation is also obtained:
where
is the relative angle between the first component and the second component. Also, the second component orientation is derived by calculating the quaternion as below
Also, the third component position
is represented as,
and the positional relations vector
is represented as,
The third component orientation is represented as
where
is the relative angle between the second component and the third component. The third component orientation is derived using calculations on the quaternion as shown below.
Hence, the robot kinematics formulation is performed and the position and orientation of the body and the relative angles correspond to the servo angle.
3.3. Dynamics Model
To obtain the dynamics of the Scorpio robot, we used the Projection Method [
18,
19,
20]. The Projection Method leads to a motion equation for the robot with constraint conditions that are generally represented as a holonomic constraint and a non-holonomic constraint.
3.3.1. Unconstrained Motion Equation
Let
be a generalized velocity vector for the body and the components can be defined as
where
is the angular velocity about the principal axis of inertia. A generalized velocity
for the robot can be defined as:
A position vector
can be defined as:
Let
be a transformation matrix, and the transformation matrix
can be defined as
The transformation matrix of
is represented by
Therefore, the transformation matrix
is denoted as
where
represents the zero matrix and the subscript indicates the dimension,
represents the identifier matrix and the subscript indicates its dimension.
Let be a generalized mass matrix that corresponds to the vector , and be a generalized force vector that corresponds to the vector .
Therefore, an unconstrained motion equation for the robot can be derived as
3.3.2. Constraint Conditions
The positions conveyed using (
4)–(
6) yield the constraint conditions for the translation components.
The constraints that bind the orientation of the body and the first component are represented by a quaternion’s equality, as shown below.
Constraining each component’s orientation, we select the constraint conditions from (
11). The robot’s joint between the body and the first component is implemented using a servo, hence it possesses a single degree of freedom. The axis direction is along the z axis in the global coordinate in the initial state. Thus, the joint constraint conditions can be given by the second and the third row equations from (
11),
While extracting the first element from (
11), we obtain:
hence, the element is incapable of the constraint condition.
Following the same way, the constraint conditions between the first component and second component are given by the third and forth rows from the following equation.
The constraint conditions between the second leg component and third leg component are given by the second row and the third row of the following equation
The constraint conditions (
8)–(
14) give a constraint matrix
that should satisfy
. The matrix
is represented as
where
is the list of constraint conditions including the denoted conditions of each leg.
To express the system dynamics of the robot, an independent velocity vector
is defined as
The vector is dependent on and is selected from . Then, can be redefined as . Note that the related matrix and the related vector (e.g., ) should be transformed into the dependent form.
To map a generalised velocity space to an independent velocity space, we defined a matrix that satisfies the conditions and .
The constraint matrix
can be separated by
. Hence,
From this relation, an orthogonal complement matrix
is obtained from
as
3.3.3. Constrained Motion Equation
Applying the constraint matrix
and Lagrange’s undetermined multipliers
to (
7) yields a constrained system
A constrained motion equation is derived by projecting the constrained system on the space constrained by
and transforming the co-ordinates to its component vectors. The base motion equation of the robot is hence derived as
The derived Equation (
15) expresses the robot’s motion considering the structure and free fall motion (the collision with the ground is not considered).
3.3.4. Contact Point
We assumed a point of the robot legs’ feet
as a point of action for the external force. The relation of the point position and the center of gravity of the third component is defined on a geometric constraint and can be denoted as
where the matrix
represents the rotation matrix about the x axis, and the angle
indicates the direction to the contact point.
By differentiating the holonomic constraints (
16) with respect to time, the constraints can first be defined in terms of velocity. The differentiated holonomic constraints are expressed in rheonomic form,
A constraint matrix for expressing the collision of the robot can be formulated as
Performing one more differential operation on the unified velocity constraint equations, the constraint equations in terms of acceleration can be obtained.
The substitution of
yields
3.3.5. Constrained Motion Equation with the External Force
The constrained system can be represented as,
where
is the constraint force for the developed robot and
is the constraint force for expressing collision.
Since the substitution of
for (
19) and the multiplication of
from the left-hand side to (
19) gives us
Multiplying
from the left-hand side gives
Substituting (
18) for (
21) gives
Thus, the constrained motion equation for a force acting on a point is represented by (
20) and (
23). This equation indicates that the attributes of the point’s motion must be considered in terms of acceleration.
In the case of each ground-touching leg of the robot, a collision has occurred and the velocity of the components change discontinuously. The velocities after the collision can be determined by the constraint conditions (
17) related to the robot’s collision with the ground and the velocities before the collision. The collision is assumed as a perfectly inelastic collision, and the velocities after the collision can be obtained from the pre-collision velocities [
21,
22,
23].
Let
define the post collision velocities. From (
20), we obtain the relationship between the velocities before and after the collision:
then, multiplying
from the left-hand side gives
Since
should satisfy
is given by
The velocities after the collision
are thus obtained by substituting (
25) for (
24) as
Thus, the robot’s state
after the collision is given by the independent state
as follows
3.4. Numerical Simulation
In this section, we present a numerical simulation and validation of the formulated dynamics model and behavior for the Scorpio robot. We simulated the dynamics model on Matlab simulink in two types of situation: the crawling locomotion and the rolling locomotion. The robot controls for the crawling locomotion were provided as a step-by-step sequence of the angle command values. The robot controls for the rolling locomotion were provided by the body orientation. For the simulation, an adaptive stepsize control ODE solver was selected.
3.4.1. Crawling Locomotion
Figure 7 presents the simulated state of the crawling locomotion of the 3D robot with the orientation information. The results indicate the realization of crawling locomotion supported by the reaction force at the toes of the robot.
Figure 8a shows the simulated accelerations on the center of gravity of the body.
Figure 8b shows the simulated yaw, roll, and pitch of the body.
Figure 8c shows the simulated angular velocity on the principal axis of inertia of the body.
Figure 8d shows the simulated translational velocity of the body.
3.4.2. Rolling Locomotion
Figure 9 presents the simulated state of the rolling locomotion of the 3D robot with orientation information. The results indicate the realization of rolling locomotion supported by the reaction force at the contact point of each leg.
Figure 10a shows the simulated accelerations on the center of gravity of the body.
Figure 10b shows the simulated yaw, roll, and pitch of the body.
Figure 10c shows the simulated angular velocity on the principal axis of inertia of the body.
Figure 10d shows the simulated traditional velocity of the body.
4. Experiments and Results
The mathematical modelling and its validation through simulation has been elaborated in the previous section. This current section discusses the experimental validation of the Scorpio robot’s crawling, rolling, wall-climbing and gaits. The experimental design involved a single Scorpio robot whose crawling, rolling and wall-climbing modes of locomotion were tested. The trials started with crawling locomotion where the robot autonomously wandered around a given space in explore mode, avoiding any obstacles in its way. We transmitted the on-board IMU sensor data, using an Xbee module, to a remote computer for analysis. The crawling locomotion of the Scorpio robot was analysed across flat and concrete terrain (
Figure 11). The measured IMU data during the crawling locomotion is shown in
Figure 12. Similarly, we performed the rolling locomotion of Scorpio in a teleoperated mode using an android device, and the IMU sensor readings were recorded over time. The measured IMU data during the rolling locomotion is shown in
Figure 13. In the case of wall-climbing, we took the robot and attached it to a cleaned glass wall and performed the ascending and descending locomotion in teleoperated fashion. Similar to the cases of crawling and rolling, we transmitted the on-board IMU sensor data to a remote computer for analysis. Snapshots from the conducted experiments are shown in
Figure 14. The measured IMU data during wall-climbing locomotion is shown in
Figure 15.
In the full course of our experiments, the Scorpio robot was able to successfully demonstrate the three modes of locomotion. The acquired IMU data validates that the changes in yaw, roll and pitch, angular velocity and acceleration of the body correspond to crawling, rolling and wall-climbing in the Scorpio robot. In addition, the experiments also validated the recovery and transformation gaits that allow switching between morphological states.
Figure 16 shows the Scorpio robot’s step-by-step transformation from crawling to rolling and vice versa.
5. Conclusions
Scorpio, a novel bio-inspired reconfigurable robot with dynamic locomotion has been developed. The developed Scorpio robot executed rolling, crawling and wall-climbing modes of locomotion as well as seamless switching between crawling and rolling, similar to the attributes of the Cebrennus rechenbergi spider. Such a reconfigurable rolling–crawling–wall-climbing robot opens up a number of exciting opportunities in the urban reconnaissance and surveillance context. This research work discusses the mechanism design, mathematical modelling and system architecture of the Scorpio robot, and describes the implemented bio-inspired reconfiguration principles. Experiments were conducted with the developed robot platform to validate the Scorpio robot’s locomotion abilities. As regards future work in this field of research, we will focus on the following aspects: (1) development of autonomous reconfigurable strategies that allow for switching between locomotion modes in response to navigating terrain or diagnostic criteria; (2) develop novel mechanisms that allow floor-to-wall transition; (3) extend the current wall-climbing mechanism to allow for turning while navigating wall surfaces; (4) development of localisation and mapping strategies for our reconfiguring Scorpio robot; (5) optimise the existing gaits that cover crawling, rolling and wall-climbing locomotion based on developed theoretical models; (6) Formulate simpler approaches to represent quaternions in mathematical modeling; (7) Use multiple ODE solvers for the numerical solution of the mathematical model, and benchmark the accuracy of various ODE solvers.