Keywords

1 Introduction

With the rapid development of Internet and information technology, radio frequency identification technology (RFID) as a new automatic identification technology, has been used to the warehouse management. The RFID positioning technology makes it possible for real-time accurate locating of the warehouse storage, and is a new perspective for building a modernized, visualized and dynamic warehouse management system.

Among the RFID indoor positioning algorithms, the method based on RSSI is low cost and relatively easy to implement positioning technology. Therefore, this paper adopts the positioning algorithm based on RSSI to carry out three-dimensional analysis of cargo inventory positioning in warehouse logistics, and select the three side measurement method to calculate the unknown node coordinates [1].

2 Positioning Analysis of Three-Dimensional Warehouse Inventory Based on RSSI Positioning Algorithm

2.1 Principle of Distance Measurement

The principle of RSSI ranging technology is by measuring the intensity of the received radio signal, and then estimates the distance between the nodes and the unknown node based on propagation path loss of a radio signal. The present paper uses the long distance path loss model to calculate the distance between the unknown node and the known. The formula is as follows:

$$ P_{r} (d) = P_{0} (d_{0} ) - 10n\,\lg \left( {\frac{d}{{d_{0} }}} \right) + X_{\sigma } $$
(1)

Among them, \( d_{0} \) takes 1 m, \( X_{\sigma } \) is 0, and the model is simplified, and the distance between unknown node and known node is obtained:

$$ d = 10^{{(A_{1} - \overline{RSSI} )/10n}} $$
(2)

where A 1 represents the reference distance d0 is 1 m, the node receives the radio signal strength. \( \overline{RSSI} \) is the mean of the wireless signal strength received by the node, n is for a radio signal propagation path loss coefficient [2, 3].

2.2 RSSI Ranging Based on Known Node Information as Reference

According to the previous surveys, the reference signal strength A 1 generally take −45 dBm, path loss coefficient n generally takes 4.

In Fig. 1, the unknown node N receiving the radio signal from known nodes A, B, C, D, the A 1 , n are substituted into the formula to calculate the distance between the unknown node N and the known node A, B, C, D respectively, d1, d2, d3, d4.

Fig. 1
figure 1

Trilateration method in three dimensional environment

2.3 Position Calculation

The three dimensional diagram of trilateration is shown in Fig. 1 [4].

The four known node A, B, C, and D are placed in the center of the ball A, B, C, D. the coordinates of the four centers are (xA, yA, zA), (xB, yB, zB), (xC, yC, zC), (xD, yD, zD). The unknown node N (xN, yN, zN) is the intersection of the four ball. The distance between the unknown nodes and four known nodes are d1, d2, d3, d4.

According to the principle of trilateration method, the formulae of three-dimensional space are shown below (3):

$$ \left\{ {\begin{array}{*{20}l} {\sqrt {(x_{A} - x_{N} )^{2} + (y_{A} - y_{N} )^{2} + (z_{A} - z_{N} )^{2} } = d_{1} } \hfill \\ {\sqrt {(x_{B} - x_{N} )^{2} + (y_{B} - y_{N} )^{2} + (z_{B} - z_{N} )^{2} } = d_{2} } \hfill \\ {\sqrt {(x_{C} - x_{N} )^{2} + (y_{C} - y_{N} )^{2} + (z_{C} - z_{N} )^{2} } = d_{3} } \hfill \\ {\sqrt {(x_{D} - x_{N} )^{2} + (y_{D} - y_{N} )^{2} + (z_{D} - z_{N} )^{2} } = d_{4} } \hfill \\ \end{array} } \right. $$
(3)

In practical applications, due to the measurement error, the four balls are very likely have no intersection. In view of this problem, the least squares method can be put into data processing.

It is assumed that the known nodes \( l = (x_{i} ,y_{i} ,z_{i} ) \) in the three dimensional space. Its measurement distance to unknown nodes \( N = (x,y,z) \) is \( d_{i} \). \( 0 < i < n \) represents the number of known nodes. The least squares of the 3D coordinates can be represented as:

$$ \left( {\widehat{x},\widehat{y},\widehat{z}} \right) = \arg \mathop {\hbox{min} }\limits_{x,y,z} \left[ {\frac{1}{n}\sum\limits_{i = 1}^{n} {\left( {d_{i} - \sqrt {(x_{i} - x)^{2} + (y_{i} - y)^{2} + (z_{i} - z)^{2} } } \right)} } \right]\quad i = 1,2, \ldots ,n $$
(4)

The solution is obtained.

$$ \left( {x,y,z} \right){ = }\left( {A^{T} A} \right)^{ - 1} A^{T} B $$
(5)

Corresponding with Fig. 1, there are:

$$ \begin{aligned} A & = 2\left[ {\begin{array}{*{20}c} {(x_{A} - x_{D} )} & {(y_{A} - y_{D} )} & {(z_{A} - z_{D} )} \\ {(x_{B} - x_{D} )} & {(y_{B} - y_{D} )} & {(z_{B} - z_{D} )} \\ {(x_{C} - x_{D} )} & {(y_{C} - y_{D} )} & {(z_{C} - z_{D} )} \\ \end{array} } \right] \\ B & = \left[ {\begin{array}{*{20}c} {x_{A}^{2} - x_{D}^{2} + y_{A}^{2} - y_{D}^{2} + z_{A}^{2} - z_{D}^{2} + d_{4}^{2} - d_{1}^{2} } \\ {x_{B}^{2} - x_{D}^{2} + y_{B}^{2} - y_{D}^{2} + z_{B}^{2} - z_{D}^{2} + d_{4}^{2} - d_{2}^{2} } \\ {x_{C}^{2} - x_{D}^{2} + y_{C}^{2} - y_{D}^{2} + z_{C}^{2} - z_{D}^{2} + d_{4}^{2} - d_{3}^{2} } \\ \end{array} } \right] \\ \end{aligned} $$
(6)

2.4 Error Sources

  1. 1.

    randomly assigned known nodes for unknown nodes

  2. 2.

    experience values directly given for environmental parameters the positioning calculation regardless of the environmental differences is bound to cause errors.

The accumulation of minor errors will directly affect the final positioning result. Therefore, it is necessary to optimize the RSSI positioning algorithm to improve the positioning accuracy to meet the requirements of the automatic positioning.

3 Optimization Method of RSSI Positioning Accuracy

3.1 Neighbor Node Selection

The essence of the neighbor node selection method is to select the known nodes which are close to the unknown nodes for relatively accurate positioning. The inductive signal strength will become smaller and weaker with the increase of the distance. Using this feature, we can choose the adjacent known nodes to achieve the precise localization by comparing the difference of the signal strength.

First, using a reader identifies the node within the readable range, then makes a difference comparison for the known node RSSI value and the unknown nodes RSSI value. The smaller the difference, the closer the distance between the node and the unknown node is. According to the principle of the least difference, four nearest known nodes are chosen for subsequent unknown position calculation. This optimized method can reduce the positioning error caused by the random allocation of known nodes, at the same time, improve the positioning accuracy of the system to a certain extent, and ensure the maximum reliability of the source data [5].

3.2 Known Node Communication Method

The known node communication method is to real time get the A 1 and n value from the location environment as shown in Fig. 2. N is unknown node, by the method described in Sect. 3.1, to get the nearest four known nodes A, B, C, D which can communicate with each other. The distance between each other are represented by dAB, dBC, dCD and dAD. The known nodes communicate with each other by using the signal strength information to estimate the environmental parameters A 1 and n.

Fig. 2
figure 2

Known node communication method

Assuming that RSSIAB is the signal strength of the known node A received by the known node B, while RSSIAD is the signal strength of the known node A received by the known node D. From the derived formula \( d = 10^{{(A_{1} - \overline{RSSI} )/10n}} \), the signal strength can be represented by:

$$ \left\{ {\begin{array}{*{20}l} {RSSI_{AB} = A_{1A} - 10n_{A} \lg (d_{AB} )} \hfill \\ {RSSI_{AD} = A_{1A} - 10n_{A} \lg (d_{AD} )} \hfill \\ \end{array} } \right. $$
(7)

The environmental parameters \( A_{1A} \) and \( n_{A} \) of the known node A in the quadrilateral ABCD region can be obtained from the above formula, as shown in Formula (8):

$$ \left\{ {\begin{array}{*{20}l} {A_{1A} = RSSI_{AB} + \frac{{RSSI_{AB} - RSSI_{AD} }}{{lg(d_{AD} /d_{AB} )}}\lg d_{AB} } \hfill \\ {n_{A} = \frac{{RSSI_{AB} - RSSI_{AD} }}{{10\lg (d_{AD} /d_{AB} )}}} \hfill \\ \end{array} } \right. $$
(8)

Similarly to the environment parameters of other three known node B, C, D, respectively, \( A_{1B} \) and \( n_{B} \), \( A_{1C} \) and \( n_{C} \), \( A_{1D} \) and \( n_{D} \). For simplicity, the environmental parameters in the quadrilateral ABCD region are as follows:

$$ \left\{ {\begin{array}{*{20}l} {A_{1} = \frac{{A_{1A} + A_{1B} + A_{1C} + A_{1D} }}{4}} \hfill \\ {n = \frac{{n_{A} + n_{B} + n_{C} + n_{D} }}{4}} \hfill \\ \end{array} } \right. $$
(9)

4 Simulation Experiment and Result

The experimental operation platform used in this paper is TAG ZK Smart intelligent storage system.

4.1 Simulated Shelf Layout

Two rows of shelves and a roadway makes a testing unit and a rectangular simulation structure is to establish.

$$ {\text{L}} \times {\text{W}} \times {\text{H}} = 1 2000 \times 3 900 \times 4 500\,\left( {\text{mm}} \right) $$

Due to the space constraints of experiment environment, only two rows with eight columns four-layer shelves are arranged. Here is the grid size for each cargo:

$$ 1 500 \times 1 200 \times 1 500\,\left( {\text{mm}} \right) $$

In this three-dimensional space, five known nodes A, B, C, D, E are set, the coordinate respectively is:

$$ {\text{A}}\left( {\begin{array}{*{20}l} {0,} \hfill & {0,} \hfill & 3 \hfill \\ \end{array} } \right);\quad {\text{B}}\left( {\begin{array}{*{20}l} {3.9,} \hfill & {12,} \hfill & {} \hfill \\ \end{array} 3} \right);\quad {\text{C}}\left( {\begin{array}{*{20}l} {3.9,} \hfill & {0,} \hfill & 0 \hfill \\ \end{array} } \right);\quad {\text{D}}\left( {\begin{array}{*{20}l} {0,} \hfill & {12,} \hfill & 0 \hfill \\ \end{array} } \right);\quad {\text{E}}\left( {\begin{array}{*{20}l} { 1. 9 5,} \hfill & { 6,} \hfill & { 1. 5} \hfill \\ \end{array} } \right) $$

Known nodes in three-dimensional space area distribution shown in Fig. 3, five known nodes are represented by five colors, the coordinates have been marked out as in the Fig. 3.

Fig. 3
figure 3

Known node distribution in 3D space

Three unknown nodes are arranged in the simulation model, and five known nodes are used to locate the nodes.

4.2 Positioning Results Compared Before and After Optimization Algorithm

  1. 1.

    Assuming that the computational coordinates of the unknown node are (x n , y n , z n ), while the true location of the coordinates is (x 0n, y 0n, z 0n), then the positioning error EE is:

    $$ EE = \sqrt {(x_{n} - x_{0n} )^{2} + (y_{n} - y_{0n} )^{2} + (z_{n} - z_{0n} )^{2} } $$
    (10)

According to the measured data we can get EE00 = (EE1 + EE2 + EE3)/3 = 18.1024063.

This kind of basic location algorithm has a large positioning error, which cannot meet the requirements of three-dimensional warehouse inventory positioning.

  1. 2.

    “Neighbor node selection” optimization simulation

The unknown node coordinates and the distance between the unknown node and the known node can be obtained by calculating under the optimal localization algorithm:

$$ \begin{aligned} & {\text{EE}}_{0 1} = \left( {{\text{EE1}} + {\text{EE2}} + {\text{EE3}}} \right)/ 3= 7. 8 3 6 6 30 5\\ & \quad \left( {{\text{EE}}_{00} - {\text{EE}}_{0 1} } \right) \div {\text{EE}}_{00} = 5 6. 7 1\% \\ \end{aligned} $$
  1. 3.

    “Known node communication method” optimization simulation

The method is the optimized inter-node communication by calculating mutual induction of RSSI values to determine the A 1, n value from different unknown node locations. After selecting adjacent known nodes and determining the different location of the regional environmental parameters A 1 , n, the unknown node coordinate and the distance between the unknown and the known node can be obtained by calculating under the double optimal localization algorithm.

$$ \begin{aligned} & {\text{EE}}_{0 2} = \left( {{\text{EE1}} + {\text{EE2}} + {\text{EE3}}} \right)/ 3= 2. 8 3 9 1 1 3 2 6\\ & \quad \left( {{\text{EE}}_{0 1} - {\text{EE}}_{0 2} } \right) \div {\text{EE}}_{0 1} = 6 3. 8\% \\ \end{aligned} $$

After the double optimization, the positioning error is reduced by 63.8%. The positioning accuracy is improved a lot, the effect is obvious, and the optimization effect is improved.

Figure 4 shows the position difference before between the localization algorithms before and after the optimization. It’s obvious from the figure that the difference between the unknown node position and the actual position is decreased after double optimization.

  • “O”: the actual node position

  • “+”: position calculated by the basic location algorithm

  • “*”: position after the preliminary optimization calculation

  • “Δ”: position after double optimization calculation.

Fig. 4
figure 4

Location results contrast visual chart

The innovation points of this paper are as follows: first, the technology of RFID is applied to the cargo localization of the three-dimensional warehouse; second, the precision of the RSSI positioning algorithm is optimized.

5 Conclusions

Due to various factors, although it has achieved some success, but it does not completely meet the requirements of the positioning. And the factors that affect the results of this paper, in addition to the selection of environmental parameters, there are a number of known nodes and density, the hardware specifications of electronic tags, and so many factors. In the future, when the experimental conditions permit, these factors can be further analyzed.