## 4 Theoretical Considerations on the Positions Obtained from the Indoor Positioning System
Alongside this division, a position calculation model for the beacons was established based on their coordinates. The model will be used to verify the data provided by the indoor positioning system. To perform this verification, the positions of the fixed beacons BF\({}_{1}\) and BF\({}_{2}\), as well as the initial points in the plane where the mobile beacons BM\({}_{1}\), BM\({}_{2}\), and BM\({}_{3}\) will be placed, must be determined. Once these positions are established, the distances *d\({}_{1}\)*, *d\({}_{2}\)*, and *d\({}_{3}\)* (Figure 10) between the fixed beacon BF\({}_{1}\) and the mobile beacons BM1, BM2, and BM3, respectively, can be calculated, as well as the distances *D\({}_{1}\)*, *D\({}_{2}\)*, and *D\({}_{3}\)* (Figure 11) between the fixed beacon BF\({}_{1}\) and the mobile beacons BM\({}_{1}\), BM\({}_{2}\), and BM\({}_{3}\), respectively. Figure 10: Determining d\({}_{1}\),d\({}_{2}\),d\({}_{3}\). Figure 9: Coordinates of fixed beacon BF\({}_{1}\) in matrix. To obtain fixed reference points in the analyzed workspace, a matrix composed of squares was constructed, each with a side of approximately 750 mm. A schematic of the surface is presented in Figure 14. Figure 15 shows the positioning of the axis over one of the points of the matrix, allowing for a somewhat precise positioning relative to the working area. Figure 14: Reference point matrix diagram. Figure 12: Translation axis. Figure 13: Motor structure and gearbox detail. The functionality of the incremental encoder was tested by programing the microcontroller to process signals received from the position transducer. These signals were interpreted using a PID positioning algorithm to achieve accurate positioning of the mobile sled. Motor control is accomplished through a dedicated driver, which requires two digital control signals. One of these signals is a PWM signal used to regulate motor speed, where the speed is directly proportional to the duty cycle of the control signal. The closed-loop axis positioning test utilized a PID algorithm to record specific axis positions, which were verified using the beacon system. As a result, the axis achieved a positioning accuracy of \(\pm 1\) mm. Although this level of error may typically be considered significant, it was deemed acceptable since the axis is intended to test a positioning system with an accuracy of \(\pm 20\) mm. For this test, two fixed beacons were installed at a height of \(1\) m above the test surface. Their placement is illustrated in Figure 16.  
Figure 17 shows the position of the mobile beacon, fixed on the mobile sled of the translation axis. It will move according to the commands received from the microcontroller. \[y^{*}=\frac{d_{1}^{2}-d_{3}^{2}}{2\cdot L_{y}}. \tag{5}\]0 Position of the mobile beacon and fixed beacon. \[y^{*}=\frac{d_{1}^{2}-d_{3}^{2}}{2\cdot L_{y}}. \tag{5}\]1 Translation axis mounting diagram. In the Marvelmind application, the workspace was created, in which the system origin (coordinate points 0,0) was defined, as well as the positions of the fixed beacons, marked in Figure 18 with numbers 4 and 8. In the same figure, the mobile beacon is marked with number 6. Following these stages, the functionality of both the translation axis and the Marvelmind indoor positioning system was successfully demonstrated, enabling controlled positioning and accurate position determination. Subsequently, a test program was developed in Python to simultaneously evaluate the two systems. The program aimed to validate the coordinates provided by the indoor GPS system using the translation axis. For this purpose, an algorithm was implemented to monitor the state of the end-of-stroke sensor and control the operation of the electric motor until the sensor is triggered. At this point, the encoder counter is reset, defining the zero position of the translation axis. Starting from this reference point, the axis is moved across its entire working stroke based on the encoder data.