Keywords

1 Introduction

Swarm robotics [29], which by definition must deploy large number robots to control them by algorithms inspired by eusocial animals, was so far not very successful in terms of real-robot scenarios and applications. This is mainly because maintaining a large swarm over long time requires a significant effort which comes mostly from the fact that small robots’ batteries need to be exchanged frequently. For large swarms, one must replace the batteries almost all the time, which is not only cumbersome, but it also disrupts the swarm operation. Furthermore, many swarm experiments require that the robots know their position or positions of other robots in their vicinity, or strength of a given environmental cue, such as a pheromone, at their current location. This requires the employment of a tracking system which is able to detect and localise a large number of robots in real time.

We present a system which overcomes the aforementioned problems by combining an affordable robotic platform, continuous charging module, real-time large-scale localisation method and artificial pheromone system into one experimental test-bed. This test-bed, P\(\mathrm {\Phi }\)SS, allows long-term large-scale experiments, where complex swarm behaviours emerge from interaction of a large number of simple physical agents.

1.1 Long Term Autonomy

To tackle the problems with limited battery capacity, several different approaches have been employed to date. The simplest, tedious way is to connect robots with depleted batteries to their chargers manually [6], or to manually replace their batteries [67]. These approaches do not scale well with the number of robots and timespan of experiments. Alternatively, robots can seek charging stations themselves [49] or schedule their charging times in accordance with anticipated users’ demands [42, 60]. These approaches require very reliable automated docking and they cause robots to spend a significant fraction of their operation time at the charging location. While this can be partially resolved by automated battery swapping systems [13], the robot has to still interrupt its current activity, which might affect the swarm operation.

To eliminate the battery problem, one can supply the energy in a continuous manner, e.g. by a tether [22]. While this is doable for a single robot, a tethered multi-robot system would have to take into account the cable positions, otherwise these will get entangled. Another researchers proposed solutions like a powered ground [38, 43, 66, 73, 75], where the robots collect energy continuously from the ground via direct contacts. Still, the mechanical connectors get worn out and dirty over time, which might affect the energy flow to the individual robots and impact the behaviour of the entire swarm. Therefore, some researches [19, 36, 78] proposed to use wireless power transfer which does not suffer from the gradual deterioration of contact-based systems.

1.2 Tracking System

To evaluate the experiments performed or to provide the robots with their positions in real-time, researchers typically use an external localisation system capable of real-time tracking of multiple robots. These systems can be based on active emitters, such as visible-light [16] or ultraviolet LEDs [72], ceiling projection [76], radio or ultrasound beacons. A costly, high-end solution is the commercial motion capture system from ViCon [53, 70], which is based on high-speed and high-resolution IR (infra-red) cameras, IR emitters and reflective targets. Alternatively, the systems can use passive markers, such as ARTag [20], ARToolKit+ [71] or AprilTag [51], which not only allow to determine the robot pose, but also encode some additional information, such as robot ID. These target detectors were used in several works in order to obtain pose information of mobile robots [14, 21, 55, 64]. Alternative target shapes are also proposed in recent literature, which are specifically designed for vision-based localisation systems with a higher precision and reduced computational costs. Due to several positive aspects, circular shaped patterns appear to be best suited as fiducial markers in external localisation systems and can be found in several works [1, 34, 44, 52, 77].

Since the methods presented in [20, 51, 71] are reported to be computationally expensive, and [53, 70] are prohibitively expensive, we chose to use a fast open-source system which uses a single camera to track the positions of high number of robots in real time [39, 41]. Since the original system does not distinguish between individual markers, we use its extensions, which use slightly modified markers with encoded ID [5, 45, 46].

The computational efficiency of the WhyCon system was examined in [39, 45]. These comparisons show that for our application, the WhyCon system [39, 46] outperforms both the ArUco [57] and AprilTag [51] systems in terms of computational efficiency, while providing comparable accuracy. Additionally, [39, 46] report that compared to AprilTag and Aruco, the method can use much smaller marker size, which is also beneficial in case of robotic swarms.

1.3 Pheromones and Environmental Cues

Pheromone communication was used in swarm robotics both in simulated [23] and real-robot scenarios for almost a decade [15]. In real-robot scenarios, substances such as alcohol are used to emulate pheromones [25, 48, 54, 58, 59]. However, these chemicals typically have different characteristics (e.g. diffusion and evaporation) than the actual pheromones and one cannot alter these parameters to study their influence on swarm behaviours. Furthermore, sensors detecting these chemicals are expensive and have slow responses. To solve that, the pheromones were simulated by means of RFID tags [31, 37], audio [3, 32] and light [8, 26, 62, 65]. While these methods are more flexible compared to the use of volatile chemicals, they also have certain drawbacks. For example finite size of RFID tags limits the simulated pheromone resolution, adjustment of the evaporation and diffusion rates of audio-based artificial pheromone is almost impossible etc. Fortunately, light-based systems exhibit flexibility, because light can be emitted with different intensities and colours using off-the-shelf components such as conventional projectors [65]. In our case, we also employ light-based artificial pheromones, which are either realised by a projector, or an LCD screen, over which the robots move [5, 11].

2 P\(\mathrm {\Phi }\)SS System Description

P\(\mathrm {\Phi }\)SS is a combination of four systems which have been previously developed for swarm robotic applications. These systems are: (i) open-source miniature robot, called Mona [2], (ii) perpetual swarm support system [10], (iii) efficient and accurate robot tracking module [39], and (iv) artificial pheromone system [5]. This section describes the proposed experimental test-bed in detail.

2.1 Mona Robot

Mona [2] is an open-source miniature mobile robotFootnote 1 that has been developed for use in swarm robotic applications. The main goal in developing the robot was to provide a low power robot to study feasibility of Perpetual Robot Swarm [10]. Moreover, the application of the robot was expanded and recently it is also used as an education purpose platform of mobile robotic lab for postgraduates in control engineering. Figure 1 shows a Mona robot’s main platform without extension modules.

Fig. 1.
figure 1

Mona robot platform.

Mona has been developed based on Arduino architectureFootnote 2 which is a successful open-source project mainly developed for educational purpose. Mona adopted ATmega 328 Mini/Pro architecture hence it has the benefit of having access to all available libraries for the Arduino module. A micro USB cable is the only requirement to start work with the robot and connection link for programming Mona using Arduino IDE. It is a small size robot with diameter of 8 cm. It is actuated using two DC motors with directly attached wheels with diameter of 32 mm. The motors rotational speeds are controlled independently using pulse-width modulation. Each motor has a magnetic encoder that generates 1500 pulses per wheel revolution. It generates enough resolution for a precise trajectory and implementing closed-loop controllers.

Mona uses a 3.7 V, 350 mAh battery which provides 3 h of autonomy. However, it is extendible to days and months using the perpetual robot swarm system [10] which will be presented in the following section. There were several autonomous power transfer methods have been proposed [7, 13, 17, 30, 35, 50, 60, 69] which can be used for extending autonomy time of Mona robots deployed in a swarm robotic scenario.

Since Mona is a low-cost robot, the platform includes only basic IR proximity sensors to detect obstacles, walls, and other robots. Therefore, it must be a modular platform allowing users to attach their required modules e.g. sensors and indicators. Several modules are currently available for Mona such as ROS (Robot Operating System) module [74] and vision board [33] for bio-inspired image processing [24]. It is easy to develop external modules for Mona that supports several communication approaches including I\(^2\)C, RS232, SPI, and direct general purpose digital pins.

2.2 Perpetual Swarm Support System

Perpetual robot swarm [10] is an active system which provides continuous power to individual mobile robots without an interruption. Therefore, robots follow their own task without considering their battery limitations. It overcomes the limitation of robots’ battery capacity that limits the swarm scenarios to a very short period of time.

The proposed perpetual robot swarm consists of two main parts: i) inductive power transmitter which is connected to a main DC power source and ii) receiver board which is connected to charging circuit of the mobile robots. At the beginning of experiments, robots’ batteries are fully charged (4.2 V). Since the arena is covered by many independent charging transmitters, robots harvest small amount of power by crossing over each transmitter. Hence, they manage to keep their battery level at the fully charge level.

A mathematical model was also proposed for the perpetual robot swarm system which shows limitation of the system in terms of maximum speed which robot can have to manage a perpetual system. It is directly related to forward speed of a robot and also maximum power transmitted by the transmitters.

Several probabilistic models were proposed for modelling of swarm robotic systems [9, 12, 18, 47, 63]. Swarm systems were also modelled with various models e.g. a Langevin equation [28], Stock & Flow model [61], and power-law equation model [4].

For the model that was proposed for perpetual swarm system, it was assumed that: (i) the robot is a circular with diameter of \(d_r\), (ii) rectangular individual charging cells with dimensions of \(x_c,y_c\), and (iii) rectangular arena with dimensions of \(x_a,y_a\). Therefore, assuming that a robot moves in a way that the probabilistic distribution of its position inside of the arena is uniform, the probability that it is charging is:

$$\begin{aligned} p_c' = n_c\frac{a_c}{a_a}\frac{v_o}{v_c} = \frac{n_cv_o(x_c-d_c-v_o\frac{t_c}{2})(y_c-d_c-v_o\frac{t_c}{2})}{v_c(x_a-d_r)(y_a-d_r)}, \end{aligned}$$
(1)

where \(n_c\) is the number of chargers, \(v_c\) is the robot speed when detecting the charging signal, \(v_o\) is the robot normal speed, \(a_c\) and \(a_a\) are the effective areas of the arena and the charging cells respectively, \(t_c\) is the coupling time of the robot to the charging cell takes a finite time, and \(d_c\) corresponds to the minimal distance of the charging coil centre from the charging cell border. Therefore, the only condition for robot to operate perpetually is a non-negative energy balance, then:

$$\begin{aligned} p_c'w_c - w_o \ge 0, \end{aligned}$$
(2)

where \(w_c\) is the charging power and \(w_o\) is the robot’s power consumption during routine operation.

2.3 Accurate Robot Tracking

Most of the experiments performed require tracking of the individual robots, typically for the purpose of experiment evaluation. Our tracking system is based on an overhead camera, which provides a complete overview of the experimental area, and a set of black-and-white markers which are attached on the robots. The system’s core is a freely available software package capable of accurate and efficient localisation of a large number of white-and-black circular patterns [39]. The accuracy of the system is in the order of millimetres and it is able to track hundreds of robots in real-time. Since the experiments typically require to distinguish the robots from each other, we had to use either the [46] variant, which uses a Manchester coding scheme to embed an ID into the tag or the COS\(\mathrm {\Phi }\) variant, which encodes the IDs into elliptical patterns with different semiaxes lengths, see Fig. 2. The COS\(\mathrm {\Phi }\) tag variant, has an elliptical shape with dimensions of 32 \(\times \) 26 mm, and the centre of the inner, white circle is shifted by 1 mm. The the ellipse major axis allows to establish the orientation of the robot within \([-90^\circ ,90^\circ ]\) and the offset of the centres is used to resolve the orientation ambiguity. The dimensions of the inner ellipse encode the pattern ID, which allows to distinguish individual robots. However, the COS\(\mathrm {\Phi }\) elliptical tags can be used only in 2d with a camera directly overhead the arena. To overcome this limitation, we implemented a more advanced variant of the tag [45, 46] which can embed more IDs and provides a full 6 DoF pose.

Fig. 2.
figure 2

Original (left), COS\(\mathrm {\Phi }\) (middle) and WhyCode (right) localisation tags.

While processing the camera images typically takes less than \(50\,\upmu \)s per robot, image capture and its transfer over USB typically takes 100 ms, which introduces an undesirable delay. In case one needs to run experiments with rapidly-moving robots, a specialised camera might be needed.

2.4 Artificial Pheromone System

COS\(\mathrm {\Phi }\) [5] is a high precision, flexible and low-cost experimental setup which provides a reliable and user friendly platform to study bio-inspired artificial pheromone mechanisms. The proposed system consists of: (i) a visual localisation system to detect robots [39] described in the previous section and (ii) a pheromone trail system which generates artificial pheromone and projects to the arena. The pheromone trail display system is realised either as an LCD screen, on which the robots move, see Fig. 3, or a projector, see Fig. 4, that illuminates the arena from above.

Fig. 3.
figure 3

Artificial pheromone system realized by an LCD screen and robots with Cos\(\varPhi \) markers.

The system can simulate several pheromones and their interactions simultaneously, where characteristics of each pheromone are determined by four parameters:

  • injection, \(\iota \), defines how fast a pheromone is released by a given robot,

  • evaporation, \(e_\phi \), determines how quickly the pheromone fades over time,

  • diffusion, \(\kappa \), defines pheromone spreading rate,

  • influence, c, characterises how much the pheromone affects the output image.

The output image which is a combination of multiple pheromones is represented by a matrix \(\mathbf {I}\), hence brightness of a pixel at a position (xy) is presented as \(\mathbf {I}(x,y)\), an \(i^{th}\) pheromone is modelled as a matrix \(\mathbf {\Phi _i}\), and the brightness of each pixel that is projected to the arena is given by

$$\begin{aligned} \mathbf {I}(x,y)=\sum _{i=1}^{n}c_i\mathbf {\Phi _i}(x,y), \end{aligned}$$
(3)

where \(\mathbf {\Phi _i}(x,y)\) is a 2D array that represents \(i^{th}\) pheromone intensity at position (xy) and \(c_i\) defines the pheromone’s influence on the displayed image.

Intensity of each pheromone are continuously updated by:

$$\begin{aligned} \mathbf {\dot{\Phi }_i}(x,y) = e_{i\phi }\mathbf {\Phi _i}(x,y)+\kappa _i\triangle \mathbf {\Phi _i}(x,y)+\iota _i(x,y), \end{aligned}$$
(4)

where \(\mathbf {\dot{\Phi }_i}(x,y)\) corresponds to the rate of the pheromone change caused by its evaporation \(e_{i\phi }\), diffusion \(\kappa _i\) and injection \(\iota _i\). To see how the interplay of the aforementioned parameters affects the swarm behaviour, see a video of the operational system at https://www.youtube.com/watch?v=bC_hdlxvGkA and a paper [5].

2.5 Arena Configuration

The aforementioned systems were combined into a single arena, thus producing an interactive system which can be used for various purposes e.g. group programming, multi-system collective scenarios, evolutionary robotics etc. The system is controlled centrally by a PC which monitors the system’s action and applies the output signals for controlling the individual charging transmitters as well as pheromone system.

The arena itself is a rectangle made out of \(4\times 4\) cm aluminium strut profile with size of 120 cm \(\times \) 100 cm. The arena’s floor covered by 480 independent inductive charging transmitters. Figure 4 shows architecture of the arena. The arena is an active system with a continuous feedback. It means that we are able to read the status of the charging cells whether they are in charging or idle mode. The charging mode refers to a state which the receiver of a robot is harvesting power and the idle mode refers to the state that transmitter is not connected to any robot. There are two different monitoring approaches for the P\(\mathrm {\Phi }\)SS system that are: (i) an overhead camera tracks robots in the arena and (ii) current sensing from individual charging cells in the perpetual swarm system. There are two outputs from the main controller which are: (i) digital images projected by the overhead projector which are generated by the pheromone system and (ii) control signals connected to all individual transmitters which are managed by the perpetual swarm system.

To combine COS\(\mathrm {\Phi }\) [5] which uses floor to illustrate pheromone trails on the flat screen and perpetual swarm system [10] which also uses floor to transmit power to the robot, a video projector was utilised for the pheromone system. Therefore, the perpetual swarm system uses floor and the pheromone system uses overhead video projector.

Fig. 4.
figure 4

(Left) Architecture of the arena and (right) P\(\mathrm {\Phi }\)SS arena made.

In terms of power management, transmitters consume very low power (about 50 mW at 12 V) when they are in the idle mode, however it reaches up to 2 W when a robot is in power harvesting mode. Therefore, the total power consumption of the arena directly relies on the number of robots, \(n_r\), which are deployed in an experiment: \((n_c-n_r)\) 50 mW \(-n_r \times \)2 W, where \(n_c\) is 480 chargers.

For the heat generated by the transmitters that, is not significant, see [10] for more detail.

There are several interactive experimental environments which have been developed for swarm robotic researches [26, 27, 56, 68]. However, those systems were bespoke development for a specific application or work only with a specific robot platform.

3 System Use Cases

The aforementioned system and its early versions, were used in a number of scenarios investigating long-term behaviour of bio-inspired robotic swarms.

For example, in artificial pheromone communication, COS\(\mathrm {\Phi }\) [5], a flexible communication medium for swarm and multi robotic systems using light and its intensity has been proposed. In this communication method, some of robots can use arena to release their messages (pheromones) and the rest of group can detect and read those messages using their light sensors. The system allows implementing multi-layer pheromone trails which can be used for multiple messages e.g. alarm or food message. Thanks to the versatility of the system, the paper [5] could investigate the impact of different pheromone settings on the behaviour of the swarm robots.

Another scenario, where the system was deployed, concerned the impact of dynamic and static cues on the ability of the robotic swarm to aggregate [9]. Because of the tracking system’s ability (see Sect. 2.3) to recover positions of the robots relatively to the cue and number of robots in the aggregates, experiments could be evaluated in an automatic way using the aforementioned metrics. This allowed the authors of [9] to perform a high number of experiments, which investigate the impact of different environmental cue settings, their configuration, size and texture as well as the population size, robot velocity, cue waiting time etc. The number of experiments performed allowed to gather sufficient data required to establish a mathematical model of cue-based swarm aggregation.

Finally, the full system configuration allowed to implement a perpetual robot swarm [10], which provides a continuous power supply to miniature mobile robots. Results of performed experiments with Mona robots [2] revealed that a swarm can perform its collective task for more than several weeks continuously. It allows researchers to investigate real-world very long-term scenarios on evolutionary robotics. Currently, we are working on effects of environmental changes on long-term collective scenario, which robots are able to learn and update their sensing ability to adapt a dynamic environment.

4 Conclusion

In this paper we proposed a multi-purpose experimental environment for use in swarm robotic researches The platform is completely build from off-the-shelf components and open-source hardware and software: Mona robots [2], wireless charging modules that allow unlimited robot operation time [10], robot localisation module that can positions and velocities of individual robots on the arena [40], and a LCD display or a light projector, which simulate environmental cues and pheromone communication [5]. Using this platform, one can perform long-term large-scale swarm experiments with real robots. This system opens an opportunity to test swarm behaviours, which could be tested only in simulation. We present three example scenarios, where the system presented demonstrated its usefulness.