1 Introduction

Underwater environment and underwater creature is mysterious. With the booming development of ocean scientific exploitation, researchers are eager to realize more and more underwater interventions. Therefore, unmanned underwater vehicles are developed rapidly due to their ability to access dangerous, complex and confined areas unattainable by divers. Underwater robots show significant potential of being applied in the fields of exploration, fishery and so on. Underwater robots have become one of the most important tools to exploit and use marine resources (Makavita et al. 2017; Eren et al. 2017; Kelasidi et al. 2016; Shintake et al. 2016). An autonomous underwater vehicle (AUV) is an unmanned underwater vehicle that carries its own power source and relies on an on-board computer and built-in machine intelligence to execute a mission consisting of a series of preprogrammed instructions modifiable on-line by data or information gathered by the vehicle sensors (Anirban and Asada 2014).

It is still problematic for these robots to implement some tasks in the wide and complicated underwater environment. In recent years, researchers around the world have been inspired by swarm intelligence to develop multi robot system. In Jiang et al. (2014), the Nagoya University designed the Cellular Robotic System (CEBOT), and all robots in the system are assumed as cell elements, and multiple cell elements can be freely combined according to the requirements of the task and environment. The Collective Robotics Experimental system is also a multi-robot system (Tsiogkas et al. 2015), which is studied by the team of Canadian Alberta University, and which utilizes multi robots work together to accomplish tasks. Unfortunately, this system can only move on land but cannot move in underwater. Harbin Engineering University (Yan et al. 2008) have also studied the control and collaborative positioning of underwater multi robot system. The cooperative localization with communication delays for multiple AUVs have studied by Northwestern Polytechnical University (Yao et al. 2009). The research of formation control and navigation of multiple AUV was designed by Shenyang Institute of automation, CAS, and the feasibility of the master–slave AUV system was verified by some simulation analysis (Capitan et al. 2013). Krogstad (2010) proposed several methods for solving the problem of attitude synchronization in spacecraft leader–follower formations, and the feasibility of the functional design of formation control was demonstrated by an AUVSAT experimental platform. Shojaei (2016) proposed a second-order leader-following formation model of multiple AUVs based on multi-layer neural network, and some simulations have been conducted to demonstrate the effectiveness of the proposed method. Wang et al. (2017a) introduced the human intelligent into the intelligent UUV formation system, some simulation results have indicated that the cooperative system of UUVs is able to realize obstacle avoidance. Yan et al. (2018) have designed two-layer random switching topologies for the formation control of the leader–follower system of UUV, and some simulation results have showed that the follower UUVs could track the desired path in the leader–follower formation system. Besides, Shanghai Jiaotong University have studied the path planning and formation stability of multi robot in view of the application of ocean observation (Pellegrinelli et al. 2017). In Yu et al. (2016) and Wang et al. (2017b), Peking University have studied the coordination of multiple robotic fish with applications to underwater robot competition, and a behavior-based hierarchical architecture in connection with cooperative behavior acquisition based on fuzzy RL has been proposed to achieve efficient coordination among multiple robotic fish.

However, the research of multi robot system mostly focused on large underwater or on-land robots et al., and some researches about multiple formation control of AUV/UUV mainly focused on simulation, in addition, some researches about small amphibious multi robot system has not been carried out at home and abroad (Shi et al. 2016; Li et al. 2015a). And in our previous studies, we created a three-dimensional printing technology-based amphibious spherical robot with transformable composite propulsion mechanisms (He et al. 2014, 2016; Guo et al. 2018), which is used for amphibious environmental detection or observation. A spherical body provides maximum internal space and the advantages of flexibility, due to its symmetry both underwater and on land, and a smaller and more flexible design enables the robot to work in smaller spaces (Pan et al. 2014, 2015; Shi et al. 2013a, b; Guo et al. 2012, 2016; Li et al. 2015b). To let our amphibious spherical robot has better adaptability and high efficiency in the wide underwater environment with the requirement of multi tasks, a formation controller was designed to guide two or three robots remained stable underwater motion. Considering the amphibious spherical robots have special structures and application environment, the leader–follower method was adopted for formation keeping and transformation of multi robot system.

In this paper, the virtual structure method was adopted for the leader–follower formation motion of multi amphibious spherical robot. Firstly, the structure and mechanism of the amphibious spherical robot is depicted. Then, the kinematic controller based on leader–follower method is designed and described. Finally, a series of experiments are carried out in a pool to verify the performance and characteristic of different formation motion. For the remaining sections of this paper in Sect. 2, an overview on amphibious spherical robot and its application requirements is described. Section 3 is dedicated to the leader–follower formation motion strategy based on virtual structure method. The performance evaluation of underwater motion with multi amphibious spherical robot is shown in Sect. 4. Finally, Sect. 5 presents the conclusions of this paper and future research directions.

2 Structure of the amphibious spherical robot

2.1 The structure and mechanism of amphibious spherical robot

As shown in Fig. 1a, b, we attempted to integrate the design and ensure seamless connections between every part to increase stability of robot. The robot has a hemispherical waterproof hull, two quarter-spherical hulls, a central plant, four water-jet propellers, an electrical circuit and some batteries. The diameter of the upper and lower hemisphere of the underwater spherical robot is 250 and 256 mm respectively, the height of the actuating unit in standing state is 118 mm. The thickness of the hemispherical hull, which is made of ABS plastic, is about 6 mm, adequate to allow the robot to operate up to 10 m underwater. The hip and knee joints of the robot have two active degrees of freedom (DOFs), referred to as the hip flexion and the knee flexion. By changing the directions and propulsive forces of its four water-jet propellers, the robot can move forward, backward, rotate clockwise or counterclockwise, with the ability to ascend, dive, or float in the underwater environment (He et al. 2014, 2016; Guo et al. 2012, 2016, 2018; Pan et al. 2014, 2015; Shi et al. 2013a, b; Li et al. 2015b).

Fig. 1
figure 1

The structure of robot and its water-jet driving mechanism. a Underwater spherical robot, b water-jet propeller

Restricted by the narrow load space and limited power resources of the small-scale amphibious spherical robot, the robotic electronic system was fabricated around an embedded computer (Xilinx XC7Z045 SoC, 512 MB DDR3 memory, Linux 3.12.0), as shown in Fig. 2. The robot was powered by a set of Li-Po batteries, with a total capacity of 24,000 mAh. Sensors including a MENS inertial sensor were used to achieve attitude angle of the robot, an ToF camera were used to achieve positioning between multi-robot, and a micro modem and a universal serial bus (USB) radio module were used for communication (Guo et al. 2017).

Fig. 2
figure 2

Sensor module of the amphibious spherical robot

2.2 The control and communication system of robot

To decrease the power consumption of the integrated circuits (ICs) and promote modular design, an Avnet MicroZed core-board carrying a Xilinx all-programmable Zynq-7000 SoC (Z-7000) was adopted to prepare the electronic system of the amphibious spherical robot. Figure 3 shows the communication system of the robot, Z-7000 provides an abundant set of power reduction mechanisms that cover various dynamical power management and dynamical voltage frequency scaling techniques. Z-7000 core board is equipped with Xillinux Linux operating system and encapsulates adaptive closed-loop motion control algorithm, sensor device and wireless in the form of Linux application program. Sonar communication equipment control program can provide the basic motion of robot and data acquisition function. A 2.4 GHz wireless network card with compound IEEE Standard 802.1 standard is used to realize communication, the control and power supply are realized through the USB2.0 interface. The underwater communication is realized by the miniature underwater sonar modem module of Tritech company, and the control and power supply are realized by using the RS-485 interface and 24VDC (Pan et al. 2016).

Fig. 3
figure 3

The schematic diagram of control and communication system

In the motion process of amphibious spherical robot, the inner core control system outputs the motion control signal according to the task and environment of robot, and also processes the data collected by the sensor system. The driving system of robot is composed of motion mechanism and signal driving and amplifying circuit. The sensor system of robot is composed of attitude detection and vision system. The attitude detection system can monitor the motion state of robot in real time. The feedback information could provide relevant basis for the robot to realize closed-loop motion control, such as angular velocity and attitude angle.

2.3 The module of communication system

In this paper, the Tritech International Ltd Micron Data Modem was used for data transition of multi-robot, the Micron Data Modem provides a means of transferring data acoustically through water. Operation is point to point, between a pair of Micron Data Modems, at operational distances of up to 500 m horizontally and 150 m vertically at a data rate of 40 bits/s. Devices are addressed through a serial electrical interface, which may be controlled directly from a control board with a simple teletype (half-duplex) terminal program (Li et al. 2017).

The quality of acoustic data transmission in water using conventional single frequency systems suffers considerably from multi-path phenomena. Sound transmitted from the sending modem arrives at the receiving unit via the direct path, and via a series of secondary paths, due to reflections from the sea surface and sea bottom. This can often result in the loss or corruption of transmitted data. In addition, conventional systems have poor immunity to the continuously varying background (such as wave noise). Tritech Spread Spectrum technology however does not concentrate the acoustic energy in one waveband, but produces a transmission which is linearly varied between 20 and 24 kHz (known as a CHIRP waveform). By correlating the received signals with the CHIRP waveform it is possible to achieve superior performance in challenging multi-path environments. In addition, identification of a unique transmission signature allows signals to be detected in extremely noisy conditions, to the extent that communication is successful even when the signal to noise ratio is as low as − 6 dB. This means that data streams can be successfully detected which are considerably below the background noise level.

The specification of the Micron Data Modem is presented in Fig. 4. The external diameter of the sensor is from 50 mm to 56 mm, and the height is 79 mm. Considering the size and volume of the modem, a dedicated pallet bracket was designed to install the modem in the robot’s lower hemisphere space. Other physical parameters and performance parameters are proposed in Table 1. It is obviously to know that the Micron Data Modem are suitable for our amphibious spherical robot as the communication module.

Fig. 4
figure 4

Specification of the Micron Data Modem

Table 1 Physical parameters of the Micron Data Modem

3 Formation strategy of multi robot system

3.1 The principle of relative posture observation and localization

In the formation motion of multi robot system based on leader–follower method, one robot was selected as the leader robot, and some other robots were acted as follower robots. The follower robot maintains the relative distance and the azimuth of the leader robot, and when the position and orientation of the leader robot changed, the follower robot obtains the error change of its own displacement and direction through visual system and other sensors. Finally, the follower robot controls its displacement and direction error reaching to zero.

In this paper, the virtual structure method was adopted to maintain the desired formation between follower robot (Rf) and leader robot (Rl), As shown in Fig. 5, XOY is the earth fixed coordination, Rvl is the virtual robot of leader robot, Rfvl is the front robot of Rvl, Rff is the front robot of follower robot. ψlf and llf is the actual observation angle and distance of the follower robot to the leader robot, ψlf and llf is the expected observation angle and distance of the follower robot to the leader robot. In this way, the problem of multi-robot system formation can be transformed into the following problem of leader and follower robot, assuming that in the multi-robot system, any follower robot has a corresponding virtual follower robot. Through the multi robot formation control method introduced in this paper, the expectation formation will be made with multi robot system (Gao et al. 2014; Sutantyo et al. 2013; Fang et al. 2014; Liang et al. 2016; Oh et al. 2017).

Fig. 5
figure 5

The leader–follower method of multi robot system

3.2 The design of the kinematic controller

Through localization between the follower robot Rf and its virtual follower robot Rv, by using the real-time attitude information between these robots, the error equation of desired formation among multi robot system could be achieved, and its corresponding kinematics controller could be designed based on the error equation. In the kinematics controller of multi robot system, each follower robot could maximize its movement according to the desired position and posture under the guidance of the leader robot. The mathematical model of the leader robot Rl could be defined as (Gao et al. 2014; Sutantyo et al. 2013):

$$\mathop {q{}_{l}}\limits^{ \bullet } = \left[ {\begin{array}{*{20}c} {\mathop {x{}_{l}}\limits^{ \bullet } } \\ {\mathop {y{}_{l}}\limits^{ \bullet } } \\ {\mathop {\theta {}_{l}}\limits^{ \bullet } } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {\cos \theta_{1} } & 0 \\ {\sin \theta_{1} } & 0 \\ 0 & 1 \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {v_{l} } \\ {w_{l} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {v_{l} \cos \theta_{1} } \\ {v_{l} \sin \theta_{1} } \\ {w_{l} } \\ \end{array} } \right]$$
(1)

where (xl, yl) is the position coordinate of the centroid of leader robot, θl is the attitude angle of leader robot Rl, vl is the velocity of follower robot Rf, wl is the angular velocity of follower robot Rf.

From Fig. 5, the relationship between the leader robot (Rl) and its front virtual robot Rfvl, the follower robot Rf and its front robot Rff can be obtained.

$$\left\{ \begin{array}{l} x_{fvl} = x_{l} - l_{elf} \cos (\theta_{i} - \psi_{elf} ) + L\cos \theta_{i} \hfill \\ y_{fvl} = y_{l} - l_{elf} \sin (\theta_{i} - \psi_{elf} ) + L\cos \theta_{i} \hfill \\ \theta_{fvl} = \theta_{i} \hfill \\ \end{array} \right.$$
(2)
$$\left\{ \begin{array}{l} x_{ff} = x_{f} + L\cos \theta_{f} \hfill \\ y_{ff} = y_{f} + L\sin \theta_{f} \hfill \\ \theta_{ff} = \theta_{f} \hfill \\ \end{array} \right.$$
(3)

where (xfvl, yfvl) is the position of the centroid of robot Rfvl, (xff, yff) is the position of the centroid of robot Rff, θfv is the attitude angle of robot Rfvl, θff is the attitude angle of robot Rff, the tracking error between robot Rfvl and Rff is:

$$\left\{ \begin{array}{l} e_{xv} = x_{ff} - x_{fvl} = (x_{f} + L\cos \theta_{f} ) - (x_{l} - l_{elf} \cos (\theta_{l} - \psi_{elf} )) + L\cos \theta_{l} \hfill \\ e_{yv} = y_{ff} - y_{fvl} = (y_{f} + L\sin \theta_{f} ) - (y_{l} - l_{elf} \sin (\theta_{l} - \psi_{elf} )) + L\sin \theta_{l} \hfill \\ \mathop \theta \limits^{ - } = \theta_{f} - \theta_{l} \hfill \\ \end{array} \right..$$
(4)

The derivation of the formula (4) can be obtained:

$$\left\{ \begin{array}{l} \mathop e\limits^{ \bullet }{}_{xv} = v_{f} \cos \theta_{f} - Lw_{f} \sin \theta_{f} - v_{l} \cos \theta_{l} - l_{elf} w_{l} \sin (\theta_{l} - \psi_{elf} ) + Lw_{l} \sin \theta_{l} \hfill \\ \mathop e\limits^{ \bullet }{}_{yv} = v_{f} \sin \theta_{f} + Lw_{f} \cos \theta_{f} - v_{l} \cos \theta_{l} + l_{elf} w_{l} \cos (\theta_{l} - \psi_{elf} ) - Lw_{l} \cos \theta_{l} \hfill \\ \mathop \theta \limits^{{\underline{ \bullet } }} = w_{f} - w_{l} \hfill \\ \end{array} \right..$$
(5)

Here a transformation coordinate was defined as:

$$\left\{ \begin{array}{l} \overline{e}_{xv} = e_{xv} \cos \theta_{j} + e_{yv} \sin \theta_{j} \hfill \\ \overline{e}_{yv} = - e_{xv} \sin \theta_{j} + e_{yv} \cos \theta_{j} \hfill \\ \end{array} \right..$$
(6)

The model of the error in the transformed coordinate system can be expressed as:

$$\left\{ \begin{array}{l} \mathop {\overline{e} }\limits^{ \bullet }{}_{xv} = v_{f} - v_{l} \cos (\theta_{l} - \theta_{f} ) - l_{elf} w_{l} \sin (\theta_{l} - \theta_{f} - \psi_{elf} ) + Lw_{l} \sin (\theta_{l} - \theta_{f} ) + w_{f} \overline{e}_{yv} \hfill \\ \mathop {\overline{e} }\limits^{ \bullet }{}_{yv} = Lw_{f} - v_{l} \sin (\theta_{l} - \theta_{f} ) + l_{elf} w_{l} \cos (\theta_{l} - \theta_{f} - \psi_{elf} ) - Lw_{l} \cos (\theta_{l} - \theta_{f} ) - w_{f} \overline{e}_{xv} \hfill \\ \mathop \theta \limits^{{\underline{ \bullet } }} = w_{f} - w_{l} \hfill \\ \end{array} \right..$$
(7)

The tracking error between robot Rfvl and robot Rff can be minimized, by choosing the control law of the follower robot uf = [vf wf]T:

$$u_{f} = \left[ \begin{array}{c} v_{l} \cos (\theta_{l} - \theta_{f} ) + l_{elf} w_{l} \sin (\theta_{l} - \theta_{f} - \psi_{elf} ) - Lw_{l} \sin (\theta_{l} - \theta_{f} ) - k_{1} \overline{e}_{xv} \hfill \\ \frac{1}{L}(v_{l} \sin (\theta_{l} - \theta_{f} ) - l_{elf} w_{l} \cos (\theta_{l} - \theta_{f} - \psi_{elf} ) + Lw_{l} \cos (\theta_{l} - \theta_{f} ) - k_{2} \overline{e}_{yv} \hfill \\ \end{array} \right]$$
(8)

where k1, k2 is the positive constant, vi, wi is the extra input.

In the absence of global information, considering the position error is difficult to obtained and measured, the observation angle and distance information of the leader robot and its follower robot can be utilized, and the model of error can be expressed as:

$$\left\{ \begin{array}{l} \overline{e}_{xv} = - l_{lf} \cos \psi_{ij} + L + l_{elf} \cos (\theta_{l} - \theta_{f} - \psi_{elf} ) - L\cos (\theta_{l} - \theta_{f} ) \hfill \\ \overline{e}_{yv} = l_{lf} \sin \psi_{ij} + l_{elf} \sin (\theta_{l} - \theta_{f} - \psi_{elf} ) - L\sin (\theta_{l} - \theta_{f} ) \hfill \\ \end{array} \right..$$
(9)

Insert the formula (7) into (8), it can be obtained the following equation:

$$u_{j} = \left[ \begin{array}{l} v_{l} \cos (\theta_{l} - \theta_{f} ) + l_{elf} w_{l} \sin (\theta_{l} - \theta_{f} - \psi_{elf} ) - Lw_{l} \sin (\theta_{l} - \theta_{f} ) \hfill \\ \quad -k_{1} ( - l_{lf} \cos \psi_{ij} + L + l_{elf} \cos (\theta_{l} - \theta_{f} - \psi_{elf} ) - L\cos (\theta_{l} - \theta_{f} )) \hfill \\ \frac{1}{L}(v_{l} \sin (\theta_{l} - \theta_{f} ) - l_{elf} w_{l} \cos (\theta_{l} - \theta_{f} - \psi_{elf} ) + Lw_{l} \cos (\theta_{l} - \theta_{f} ) \hfill \\ \quad - k_{2} (l_{lf} \sin \psi_{ij} + l_{elf} \sin (\theta_{l} - \theta_{f} - \psi_{elf} ) - L\sin (\theta_{l} - \theta_{f} )) \hfill \\ \end{array} \right].$$
(10)

4 Multi-robot experiment and characteristic evaluation

To evaluate the leader–follower formation strategy of multi amphibious spherical robot, we carried out several underwater experiments in a pool. The control command of each robot was sent from its own base station, and the position of robot can be acquired by some visual and attitude sensors. These experiments were carried out by the same control algorithm in the same pool, and each one was repeated more than 20 times.

Due to the limitation of pool’s depth in experimental condition, it was not sufficient to complete robot’s vertical motion. Hence, this paper only shows the performance of horizontal motion. Firstly, we carried out the longitudinal formation experiment of two robot (robot 1 and robot 2), maintaining the relative distance and attitude of the initial formation in the movement. The robot 1 and robot 2 were programmed to move forward in a distance of 200 mm in a pool, respectively, and Fig. 6 shows two snapshots of the horizontal forward movement.

Fig. 6
figure 6

Experiments on longitudinal formation movement

Figure 7 shows the displacement trajectory of the longitudinal formation of robot. As shown in the displacement experimental results of robot 1 and robot 2, left and right deviation can occur and the maximum deviation of the two robots was approximately 5 mm. Consequently, in the longitudinal formation movement, the final trajectory of the leader and follower robots still follows initial setting despite some minor deviations during movement.

Fig. 7
figure 7

Displacement trajectory of the longitudinal formation

Then, we carried out underwater experiment of linear formation with three robots, the robot 1 was selected as the leader robot, the robot 2 and robot 3 were acted as follower robots, so the robot 2 and robot 3 are all maintaining the initial relative distance and attitude of robot 1. These three robots were programmed to move forward in a distance of 200 mm in a pool with the same velocity, Fig. 8 shows two snapshots of the linear formation movement, and the final trajectory of robot 2 and robot 3 basically follows the initial setting of robot 1 despite some minor deviations.

Fig. 8
figure 8

Experiments on linear formation movement

The displacement trajectory of three robots with linear formation movement as shown in Fig. 9, the robot 2 has better trajectory tracking performance, and robot 3 was difficult to achieve the desired displacement trajectory due to the distance between robot 2 and robot 1 was closer to the distance between robot 3 and robot 1. Although there exists some left and right deviation in the experiment due to the mutual interferences between robots, the three robots can basically keep straight linear formation movement, and the multi-robot system in this paper can complete the linear formation movement with the leader–follower formation strategy.

Fig. 9
figure 9

Displacement trajectory of the linear formation

In the cooperative system of multi robot, the maintenance of triangular formation can not only keep the maximum stability of system when confronted with some disturbances during motioning, but also continued to tracking or monitoring. Following, we carried out some triangular formation underwater experiments with three robots, robot 2 is the leader robot, robot 1 and robot 3 are follower robots, Fig. 10 shows two snapshots of three robots with triangular formation movement.

Fig. 10
figure 10

Experiments on triangular formation movement

The displacement trajectory of three robots with triangular formation movement as shown in Fig. 11. Experimental results showed that the robot 2 occur some deviation in the movement, so the follower robot 1 and robot 3 are all occur some deviations, and as the movement continues, the distance between robot 1 and robot 3 was closer to the distance between robot 2 and robot 1, so the robot 3 has better performance. Above all, the multi-robot system in this paper can keep the triangular formation movement with the leader–follower strategy despite some minor deviations.

Fig. 11
figure 11

Displacement trajectory of the triangular formation

According to the experimental results of multi robot system, the distance between actual trajectory and desired trajectory was defined as d, when the d is less than ten percent of the displacement, the performance of formation strategy is considered as acceptable. By calculating the proportion of the number that meet requirements, experimental results of different formation movement as Table 2 shows.

Table 2 Experimental results of different formation movement

Above all, due to there is only one leader robot and one follower robot in the longitudinal formation movement, the relative distance and interference between the two robots are small, so the motion performance is good enough. When three robots are moving with linear formation, the follower robot that is closer to the leader robot has better performance, and the proportion of the system which meet the requirements is approximately 61%. In the triangular formation movement, the trajectory tracking performance of the follower robot that is relatively far away from the leader robot is not good, due to the mutual interference of multi robot and the error of inertial sensors. Based on the above experimental results, although there exist some deviations of three formation movement based on the leader–follower strategy, the multi robot system basically keep the desired trajectory, so the system in this paper can keep the desired formation movement with the leader–follower formation strategy.

5 Conclusions and future work

We have described a spherical robot configuration for amphibious applications. The amphibious robot can move with a relatively long period of time on land and underwater. Furthermore, by expanding the working scope and improving the performance of a single amphibious spherical robot, the multi-robot system was designed for our amphibious spherical robot and can be employed to do sample collections and monitoring in underwater space.

To demonstrate the efficiency of the designed kinematic controller based on leader–follower method with our multi robot system, a series of experiments were carried out in a pool with three different formations to evaluate the stability and performance of the system, including longitudinal formation, linear formation and triangular formation motion. In addition, we assessed the performance of each formation motion in terms of the deviation from the desired trajectory and the vibrations that occurred as the robot moves. Experimental results showed that the proposed kinematic controller attained good motion performance, with less deviation and vibration, and the minimum proportion of the formation system which meet the requirements is approximately 61%. In future work, we will further improve the efficiency of formation motion control with more robots in complex amphibious environment.