1 Introduction

Scientific research is an important force in promoting the development and progress of human society. Robots and artificial intelligence rise again. Humanoid robot is the main development direction of robot. From assistant robot to co-worker, co-robot, until Cobot, many specific requirements are put forward in practical applications, which promotes the progress of the research [1]. Developing educational robots has become an active research direction due to the related technologies which have a great of advance in the past decades. Positioning educational robots is one of important tasks, because it is the critical technology for robots to provide the intelligent services. Accurating and pervasiving indoor positioning can significantly improve our everyday life [2]. Educational robots must have positioning ability so that they move to the target locations to provide their services [3]. Positioning technology can also accurately guide the robot, in order to achieve autonomous recovery of the robot [4]. A lot of progresses have been achieved in developing positioning technologies and applications, but there is still much room for improvement. Robot navigation in urban environments has become an active area of research in recent years [5]. This paper’s target is to develop a positioning method to guide educational robots (our group’s self-developed educational robot, we call it Erob) to move to a target location in the indoor ambiance.

Indoor positioning has received great attention recently because position information is essential for providing location-based services (LBSs) [6]. All of local communication technologies and some sensor technologies were applied in indoor positioning, which offers intelligent services in various fields, for example, Internet of Things, hospitals, garages, classrooms, etc. The references about ZigBee indoor positioning [7] were introduced. A large number of nodes should be arranged for indoor positioning, and each node also needs to supply power alone, and the network is complex, it is not suitable for positioning the educational robot in the classroom scenario. Many modern applications use RFID as a wireless non-contact method of data transfer to identify and track the objects to which the transponders are attached [8]. Passive tags can be used, which obtain the energy from the interrogating electromagnetic field created by RFID readers, and the transponders require no local power sources, such as batteries, which results in the reduced need for maintenance while achieving high flexibility, long lifetime, and low cost. RFID technology has been widely adopted in various industrial tracking and positioning applications [9]. RFID system has two main components, RFID tags and RFID readers [10]. In the logistics, transportation and indoor positioning areas have great application. WiFi-based positioning is another potential technology for indoor navigation, because it only uses per-existing WiFi infrastructures. WiFi positioning error does not accumulate with time which makes it a potential source to aid the stand alone navigation solution based on micro-electromechanical systems (MEMS) sensors [11]. WiFi hotspots are very popular in public areas because they can provide high data rates up to 11 Mbit/s (IEEE 802.11b) or 56 Mbit/s (IEEE 802.11a/g) [12]. WiFi positioning systems usually estimate the transmitter position using radio beacons involving several antennas and measuring the power of received signals [13]. WiFi positioning is one of the most ideal positioning technologies, and it is mainly used for moving target positioning in indoor environment.

Indoor positioning faces many challenges, including location accuracy, cost, coverage range, latency, and the complexity of indoor environments resulting from multipath propagation and frequent environment changes [12], which can cause significant degradation in the accuracy of indoor positioning.

Under the background of education information, many universities, primary and middle schools have started the campus wireless network construction, and most of them achieved seamless coverage of WiFi. In order to achieve low-cost and efficient educational robot positioning, we consider using campus WiFi signals to provide positioning services for Erob. In order to enable Erob to navigate and localize effectively in indoor environments, we take advantage of the integration of WiFi and RFID fingerprinting techniques to overcome the limitations of only RFID or WiFi positioning, at the same time, we use the wireless fingerprint technology to establish a large-scale (1 m) interval WiFi fingerprint and layout two access points (APs) on the wall. Through the offline stage of gathering fingerprint data and establishing the fingerprint database of the classroom, we also create RFID fingerprint map in front of the projection area, in which layout of the 11 passive tags array. The reader acquired large amount of data, and RFID fingerprint database is established.

This paper addresses the problem that guides an indoor Erob from any location to a specific location, such as Erob home or work place. It first designs an infrastructure which mainly uses WiFi and RFID technologies. Then, the method which utilizes strengths of two technologies is proposed to guide Erob to the target location. The critical task of guiding Erob is to position the location when Erob moves to the target location. This method divides two cases to guide Erob. The first case is the long-distance guidance, which uses WiFi fingerprint to guide Erob when it is 2 m away from the target location. The second case is the short-distance guidance, which uses fingerprint of RFID array to guide Erob when it is within 2 m from the target location.

The rest of the paper is organized as follows. Section 2 presents the principle and the algorithm of positioning by using WiFi and RFID fingerprint. Section 3 presents the infrastructure and the preparation of WiFi and RFID fingerprint databases. Section 4 reports the algorithm and experiments of fingerprint-based positioning. Section 5 presents the results and discussion. Finally, Section 6 concludes this paper.

2 Positioning principle and algorithm

The purpose of positioning is to find the location of the Erob and hope Erob provide intelligent services, which need to study the positioning principle and algorithm.

2.1 Positioning principle by using WiFi and RFID fingerprint

Fingerprinting localization or scene analysis is a pattern recognition technique, which matches the online signal features with the offline features stored in a fingerprint database. One popular way to position the Erob in indoor environment is that to use reference fingerprints based on signals [14]. In general, there are two stages for a fingerprint-based positioning algorithm: (1) offline stage and (2) online stage. During offline stage, a target environment is calibrated by performing a site-survey with a mobile robot. The whole area is typically overlaid with a set of predetermined grid points, where sample data should be acquired. Distance measuring technology based on RSSI (received signal strength indication) is very popular now, most sensor networks have built-in radio frequency (RF) chips, so as not to require any additional hardware overhead [15].

The RSSI method is to obtain the nodes’ signal strength of known locations in the unknown nodes, then according to the model that the radio signal attentions with distance to find the distance between unknown nodes and known nodes, and finally calculate the location of the unknown node from the distance [16]. At each reference point, many samples of received signal strength (RSS) are repeatedly acquired. Each reference point has a position known priori. Then, a vector of mean RSS values associated with the position of the reference point is recorded into a database known as a fingerprint map. During online stage, a moving Erob at unknown position reports its instantly sampled vector of RSS values to a local server. The server uses a pattern matching to estimate the current position of the moving Erob. The designed algorithm find out where to go based on the current position, the layout of the area, and the target location.

2.2 Fingerprint positioning algorithm

Following the above-stated principle, the proposed algorithm has two stages [17]. The offline stage consists of measuring the location of Erob in different coordinate systems and storing the sampled RSS information in the database, shown in Fig. 1.

Fig. 1
figure 1

Based on the fingerprint positioning technology of Erob offline stage. Offline stage: When the Erob enters the wireless coverage (APs/Tags) area, which collects the RSS signal at the preset grid reference position, and processes the acquisition to establish the RSS fingerprint database

The offline stage includes the following steps:

  • Step 1. Assign beacon nodes to the tracking area;

  • Step 2. The tracking area is divided into many small grids (fingerprints), and the grid points (fingerprint points) are used as reference points in the tracking area;

  • Step 3. To store the acquired RSS into the corresponding coordinate database.

In the online stage, Erob sends the RSS signal to the server according to the RSS signal acquired at different beacon points, and the server calls the online search algorithm to estimate the position of Erob, shown in Fig. 2.

Fig. 2
figure 2

Based on the fingerprint positioning technology of Erob online stage. Online phase: When Erob moves in the coverage area, real-time RSS is collected and matched with the RSS in the database

The online stage includes the following steps:

  • Step 1. Erob enters the tracking area, and then acquires RSS values from each beacon node;

  • Step 2. To compare the obtained RSS values with the stored values in the database;

  • Step 3. To retrieve the closest location of the RSS value in the database.

3 Fingerprint database preparation

3.1 Infrastructure and experiment setting

In the WiFi fingerprint positioning research, we build a classroom with the infrastructure of WiFi and RFID. The 1 m rear of the podium on the wall placed two APs, which identified as AP1, AP2, and each one spaces 4 m, and the right side of the podium regards as the positioning target area. The experimental area was constructed by WiFi fingerprinting. The fingerprint interval is 1 m, and the width of the three rows is 1 m, the experimental environment is shown in Fig. 3. Electronic tags and ground labels layout are shown in Fig. 4.

Fig. 3
figure 3

Experimental environment. The No. 301 future classroom, which is a complex indoor environment

Fig. 4
figure 4

Electronic tag and ground label layout. The sparse grid is used for AP’s RSS acquisition location reference, and the dense grid is tag’s RSS collection area

The target area is on the right of the podium, we have arranged 11 electronic tags on the whiteboard. As shown in Fig. 9, and the purpose of this design is to limit the projection area in the 0.5 m × 0.5 m = 0.25 m2. The layout of the middle tags is quadrilateral, which plays a certain role in correcting the hexagon. A central tag can be considered as the center of the projection center position. The distance from the projection area to Erob is nearest 20 cm. The ground labels’ layout area is 2 m × 2 m = 4 m2.

3.2 Experimental data acquisition

Hardware and software are indispensable part of the positioning experiment, only with which can we establish the WiFi and RFID positioning system RSS database.

3.2.1 Software and hardware introduction

In the experiment, we used software and hardware equipment that includes inSSIDer; wirelessmon; 360 Mini router (APs); VM-5GA RFID module; 11 passive electronic tags; Ultra High Frequency (UHF) RFID Reader APP V2.1; Lenovo ThinkPadX220; and Erob platforms developed by ourselves, shown in Fig. 5.

Fig. 5
figure 5

Part of the experimental equipment. a VM-5GA RFID module—RSS signal for collecting electronic tags. b Passive electronic tags—provide RSS signal for reader. c 360 Mini router—provide AP’s RSS signal for laptop. d Erob—self-developed educational robot, it is a mobile platform

3.2.2 WiFi fingerprint database preparation

In the No. 301 future classroom, we layouted two routers (AP1 and AP2), seen in Fig. 3. Erob, along the corridor of the AP2 acquired data, obtained 10 RSS (AP1 and AP2) values in each sampling point, then averaged the RSS values.

$$ {\overline{r}}_i=\frac{1}{N}\sum \limits_{j=1}^N{r}_i $$
(1)

where i is the sampling point fingerprint number, j is the number of sampling time, and the maximum value is 10. Establishing the fingerprint database for AP1 and AP2, and also allowing Erob to follow the AP1, the corridor performs the same operation and builds up the database. The right corridor RSS signal changes are seen in Fig. 6. The left corridor RSS signal changes are seen in Fig. 7. AP1 (RSS) and AP2 (RSS) means in the right (Window) corridor are seen in Fig. 8.

Fig. 6
figure 6

The right corridor RSS signal changes (left). In the right corridor, AP1 RSS’s change

Fig. 7
figure 7

The left corridor RSS signal changes (middle). In the left corridor, AP2 RSS’s change

Fig. 8
figure 8

AP1 (RSS) and AP2 (RSS) mean (right). AP1 and AP2 RSS signals superimposed change in the same corridor

We also stored and processed the fingerprint database of the podium area, and through the fingerprint database analysis, we can get the maximum peak probability of the accuracy of 2 m. By improving the algorithm, we got better RSS signal characteristics and improve the positioning effect, and got the maximum peak probability of the accuracy of 1.72 m.

3.2.3 RFID fingerprint database establishment

We established RFID fingerprint identification on the ground; the target area is 0.5 m × 0.5 m = 0.25 m2; the outer tags are arranged in regular hexagons; the middle four tags are arranged in 0.2 m × 0.2 m; the central point is arranged with an electronic tag; and the distance between the adjacent tags is 0.1 m, it is a tags array. These are seen in Fig. 9.

Fig. 9
figure 9

Projection area electronic tag layout. Tag layout structure, showing hexagons (six tags) + quads (four tags) + center points (one tag)

The data of sampling points refer to the ground labels, the actual acquire in strict accordance with the interval of 0.1 m distance. The fingerprint map is seen in Fig. 10. In the RSS signal acquisition area, Erob acquire signals once a second, it acquire 10 times, and each time records 11 tags. During the experiment, we gathered a large amount of RSS data and averaged every acquisition point value; finally, the fingerprint database is established.

Fig. 10
figure 10

RFID fingerprint map. RFID grid provides a reference point for tags’ RSS signal acquisition

The RSS sampling point distribution is seen in Fig. 10. There are 11 tags in the target area, each tag needs to be collected 10 times, and a total of 110 signals are collected at each ground label (fingerprint point), then average these values.

$$ \overline{RSS} xy=\frac{1}{M}\sum \limits_{i=1}^M{T}_i\frac{1}{N}\sum \limits_{\mathrm{j}=1}^N{RSS}_j $$
(2)

where xy is the fingerprint coordinate point; i is the number of electronic tags, and the maximum is 11; and j is the number of samples, and the maximum is 10. In this way, the RFID fingerprint database is established. Parameters are listed in Table 1.

Table 1 RFID Fingerprint Database

In a far distance, part of the signal is influenced by many factors. Fingerprint data RSS energy distribution is not in the central axis. RSSx5, the strongest; RSS (0y~8y) data; and RSSx5 grid offsets are 0, 0, 0, + 1, − 1, − 1, − 2, − 3, and − 3, respectively. Figure 11 shows the changes in RSS with respect to the distance.

Fig. 11
figure 11

Average RSS vs distance. The relationship between RSS energy distribution map and distance is closer to the center, and RSS energy becomes stronger gradually

By analyzing the offset, we found that the signal is strong on the central axis near the target 20 cm, and it can give us a projection routing decision for Erob.

4 Experiments of fingerprint-based positioning

Erob moves near the platform, which is based on RSS energy intensity changes as navigation decisions. If AP2-AP1 ≥ 0, Erob will move to the AP2 direction and it is very easy to enter the target area. After that, we need RFID for more accurate positioning.

4.1 Erob path-plan algorithm

There are three ways to get Erob into the RFID positioning area: the first way is to enter from the left, the second way is from the middle, and the third way is to enter from the right. RSS energy-enhanced depth-first algorithm is shown in Fig. 12.

Fig. 12
figure 12

RSS energy-enhanced depth-first algorithm. Erob enters the positioning area from the left, middle, and right, respectively, and makes routing decisions based on the energy changes

The first way is arbitrary sampling point at the left of the graphic (ai, j) as entry point. Roughly, Erob move direction is the point to the whiteboard of the wall; how to navigate Erob must be according to the RSS energy change. It is necessary to compare with RSS database points ai-1, j, ai-1, j + 1, and ai, j + 1. If RSS ai-1, j + 1 were stronger than RSS ai-1, j and RSS ai-1, j + 1, the decision of Erob navigation requires the Erob move to RSS ai-1, j + 1. The next routing decision is carried out by the Erob after arrived RSS ai-1, j + 1. Similarly, Erob will choose strong energy as the driving direction of navigation through the comparison of the three points’ RSS. Routing decision is shown in Fig. 13a.

Fig. 13
figure 13

RSS energy-enhanced depth-first algorithm development (a, b, c). The algorithms of Fig. 12 are illustrated separately from left, bottom and right respectively. a Erob from left enters routing decision (left). b Erob from bottom enters routing decision (middle). c Erob from right enters routing decision (right)

The second way is arbitrary sampling point at the bottom of the graphic (ai, j) as entry point. Roughly, Erob move direction is the point to the whiteboard of the wall, how to navigate Erob must be according to the RSS energy change. It is necessary to compare with RSS database’s points ai-1, j-1,ai-1, j, and ai-1, j + 1. If RSS ai-1, j-1 were stronger than RSS ai-1, j and RSS ai-1, j + 1, the decision of Erob navigation requires the Erob move to RSS ai-1, j-1, the next routing decision is carried out by the Erob after arrived RSS ai-1, j-1. Similarly, Erob will choose strong energy as the driving direction of navigation through the comparison of the three points RSS, routing decision reference. The routing decision is shown in Fig. 13b.

The third way is arbitrary sampling point at the right of the graphic (ai, j) as entry point. Roughly, Erob move direction is the point to the whiteboard of the wall; how to navigate Erob must be according to the RSS energy change. It is necessary to compare with RSS database points ai-1, j, ai-1, j-1, and ai, j-1. If RSS ai-1, j were stronger than RSS ai-1, j-1 and RSS ai, j-1, the decision of Erob navigation requires the robot move to RSS ai-1, j, the next routing decision is carried out by the Erob after arrived RSS ai-1, j. Similarly, Erob will choose strong energy as the driving direction of navigation through the comparison of the three points’ RSS; routing decision is shown in Fig. 13c.

According to our routing decision algorithm idea, we establish the following matrix A.

$$ A=\left[\begin{array}{cccc}{a}_{11}& {a}_{12}& \dots & {a}_{1m}\\ {}{a}_{21}& {a}_{22}& \dots & {a}_{2m}\\ {}\vdots & \vdots & \dots & \vdots \\ {}{a}_{n1}& {a}_{n2}& \dots & {a}_{nm}\end{array}\right] $$

The algorithm is described below (if n = 11, m = 9).

figure a

We carried out the software processing, from the left, right, and bottom any point as the entry point (each way three times); Erob movement trajectory is shown in Fig. 14.

Fig. 14
figure 14

Erob movement trajectory algorithm test (a, b, c). Erob enters the motion routing trajectory of the RFID positioning area from any three points: left side, bottom side, and right side. a Erob enters the target area’s trajectory from left side (left). Erob enters the routing path of the positioning area from any three points on the left side. b Erob enters the target area’s trajectory from bottom side (middle). Erob enters the routing path of the positioning area from any three points on the middle side. c Erob enters the target area’s trajectory from right side (right). Erob enters the routing path of the positioning area from any three points on the right side

At the same time, according to the routing decision algorithm, Erob can enter from the bottom, the left, and the right, separately. In our layout of the RFID fingerprint database, we consider the robot to enter the positioning area from the above three directions respectively. According to the RSS energy enhancement comparison, and manual labelling, Erob routing direction is shown in Fig. 15.

Fig. 15
figure 15

Erob into the target area (any point). The trajectory of the Erob in the grid, which can eventually reach the target position

5 Results and discussion

5.1 RSS energy distribution trend analysis

From Fig. 11, we can find that about the signal strength distribution, Erob is much closer to the middle, RSS signal strength gets stronger, and Erob is closer to the target area. The signal strength also increased gradually, of course, during the implementation of a specific test; it will receive the influence of many factors such as occlusion and reflection, resulting in unstable signal transmission and a shift in signal intensity. Fingerprint data RSS energy distribution in the central axis are not all the strongest; RSS data and central axis grid offsets are 0, 0, 0, + 1, − 1, − 1, − 2, − 3, and − 3, respectively.

5.2 Trajectory analysis based on RSS energy navigation algorithm

Figure 14a shows the Erob enters the location area with the RSS energy point(− 51.53/− 46.3/− 49.49) from the left area, according to our algorithm to make route navigation decision; the Erob can finally reach point(− 41.13), which achieves precise navigation and positioning. Panel (b) shows Erob from the bottom any point(− 50.33/− 48.96/− 48.72) enter the target area; the Erob also can finally reach point(− 41.13), which also has the ability to navigate and position the Erob. Panel (c) shows Erob from the right any point(− 51.79/− 51.24/− 49.36) enter the target area; the Erob also can finally reach the point(− 41.13), which also has the ability to navigate Erob arrival in the target area and position the Erob.

5.3 The robot enters the target area trajectory from any point

Figure 15 presents the results of Erob into the target area (any point); Erob enters the location area from any point. According to the RSS energy distribution of the entry point, combined with our routing algorithm, the robot can enter from any point to the target point(− 41.13). It verifies the feasibility and effectiveness of our algorithm.

5.4 Positioning Erob

We navigated Erob to the 301 wisdom classroom (on the right corridor), it is about 10 m from AP1, and set the relevant obstacle avoidance parameters, Erob according to that AP1, AP2 RSS energy changes and makes routing decisions. The decision-making algorithm is driven by the energy change, driven by RSS weak energy to RSS energy strong direction. According to the previous experiment, we obtained the WiFi positioning accuracy can reach about 1.78 m. Using WiFi signals to positioning and guide Erob, it will enter the ground labels area.

Using our algorithm for routing decision, Erob can move to the fingerprint area, it can choose the edge of any node into the RFID fingerprint positioning area, and through the experiment, we can get the trajectory of Erob movement. In the algorithm design, we set the RFID ground acquisition tags for the maximum value of n = 11 and m = 9, according to Erob from the left any point into the RFID positioning area, through the algorithm to perform navigation. The same Erob from the front or left any point into the positioning area.

When Erob is closer to the electronic tag array middle axis, the greater value of RSS, from the middle axis to the both ends of the movement, RSS value is gradually reduced. When Erob determines the energy intensity according to the energy decision, Erob can move along the middle of the electronic tags array.

6 Conclusion

According to WiFi and RFID fingerprint fusion technologies, during offline stage, we layout APs and tag array, build fingerprint maps and establish RSS offline database, respectively. During online stage, we propose a set of navigation and positioning based on RSS energy change algorithm. We have obtained an ideal positioning effect in the experiment, in the vertical axis, ensure our algorithm is very good application in the projection positioning sports decision-making. We found that the middle axis is the closest to the projection area of the three sampling points of signal is more rational, and verify our algorithm can be used in making projection positioning movement, which is suitable for the decision of Erob movement. Erob can find the target location point and can push the teaching content, smart charging, discovering clients, and providing smart services, and achieve the desired effect. Positioning accuracy reach to centimeter level (2.35 cm), it can satisfy the teaching projection application. Our future work will be more accurate positioning research; we can use more advanced positioning equipment and technical means for our later intelligent charging to provide more rational positioning services.